2016-10-08 74 views
0

我正在創建一個應用程序,我需要從XML文件中獲取一些數據。我有一個方法,它將數據從XML文件填充到List<>。在使用ConsoleApplication時,XML文件應該位於bin> debug文件夾中。所以,問題是,在創建應用程序時,我必須在哪裏放置XML文件?創建應用程序時,在哪裏添加XML文件和數據?

我用Xamarin使用Visual Studio 2015。

在此先感謝!

回答

0

推薦的方法是將文件放在Assets文件夾中,因爲它將文件視爲原始二進制文件。請注意,您應該在VisualStudio中將此文件的Build Action設置爲AndroidAsset

XDocument xdoc; 
// Read the contents of our asset 
AssetManager assets = this.Assets; 
using (StreamReader sr = new StreamReader(assets.Open("yourXml.xml"))) 
{ 
    xdoc = XDocument.Load(sr); 
} 

或者類似地,全部讀取爲文本字符串並解析爲Xml。

string content; 
AssetManager assets = this.Assets; 
using (StreamReader sr = new StreamReader(assets.Open("yourXml.xml"))) 
{ 
    content = sr.ReadToEnd(); 
} 

XDocument xdoc = XDocument.Parse(content); 

讀完之後,xdoc準備迭代。其餘的工作是迭代和讀取值,並放入List<>

var list = new List<string>(); 
foreach(XElement node in xdoc.Root.Nodes()) { 
    try { 
     // Assume that your children nodes are like this format; <node attr="something" /> 
     string value = node.Attribute("attr").Value; 
     list.Add(value); 
    } 
    catch (Exception ex) 
    { 
    } 
} 

有關更多信息,本教程將指導您如何從Asset文件夾中讀取文本文件。

相關問題