C#讀取Xml文件


C#中可以用XmlDocument類操作Xml文件

例如要讀取如下Xml文件

1 <root>  
2 <person name="WangYao">
3 <age>25</age>
4 </person>
5 <person name="Jobs">
6 <age>56</age>
7 </person>
8 </root>

程式如下

 1 XmlDocument doc = new XmlDocument();      
2 doc.Load("config.xml"); //加載Xml文件
3 XmlElement rootElem = doc.DocumentElement; //獲取根節點
4 XmlNodeList personNodes = rootElem.GetElementsByTagName("person"); //獲取person子節點集合
5 foreach (XmlNode node in personNodes)
6 {
7 string strName = ((XmlElement)node).GetAttribute("name"); //獲取name屬性值
8 Console.WriteLine(strName);
9 XmlNodeList subAgeNodes = ((XmlElement)node).GetElementsByTagName("age"); //獲取age子XmlElement集合
10 if (subAgeNodes.Count == 1)
11 {
12 string strAge = subAgeNodes[0].InnerText;
13 Console.WriteLine(strAge);
14 }
15 }

其中XmlElement繼承自XmlNode

XmlElement有GetAttribute()&GetElementsByTagName()等方法而XmlNode沒有

不管使用XmlNode的ChildNodes屬性還是XmlElement的GetElementsByTagName()方法獲取的都是XmlNodeList

那這里就存在獲取的XmlNodeList中的XmlNode到底是什么類型的問題

可以根據XmlNode的NodeType屬性判斷

如若等於XmlNodeType.Element就可以強轉為XmlElement從而使用XmlElement的方法





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM