2016-10-08 4 views
0

앱을 만들고 있는데 XML 개의 파일에서 데이터를 가져와야합니다. 나는 XML 파일의 데이터를 List<>에 채우는 방법이 있습니다. ConsoleApplication으로 작업 할 때 XML 파일은 bin> debug 폴더에 있어야합니다. 그래서, 문제는 앱을 만들 때 XML 파일을 어디에 두어야합니까?앱을 만들 때 XML 파일에 데이터를 추가 할 위치는 어디입니까?

나는 Visual Studio 2015를 Xamarin과 함께 사용합니다.

미리 감사드립니다.

답변

0

파일을 원시 바이너리로 처리하므로 파일을 Assets 폴더에 저장하는 것이 좋습니다. VisualStudio에서이 파일의 Build ActionAndroidAsset으로 설정해야합니다.

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) 
    { 
    } 
} 

자세한 내용은이 자습서에서 자산 폴더에서 텍스트 파일을 읽는 방법을 안내합니다.

관련 문제