C#中可以用XmlDocument類操作Xml文件
例如要讀取如下Xml文件
25 56
程式如下
XmlDocument doc = new XmlDocument(); doc.Load("config.xml"); //加載Xml文件 XmlElement rootElem = doc.DocumentElement; //獲取根節點 XmlNodeList personNodes = rootElem.GetElementsByTagName("person"); //獲取person子節點集合 foreach (XmlNode node in personNodes) { string strName = ((XmlElement)node).GetAttribute("name"); //獲取name屬性值 Console.WriteLine(strName); XmlNodeList subAgeNodes = ((XmlElement)node).GetElementsByTagName("age"); //獲取age子XmlElement集合 if (subAgeNodes.Count == 1) { string strAge = subAgeNodes[0].InnerText; Console.WriteLine(strAge); } }
其中XmlElement繼承自XmlNode
XmlElement有GetAttribute()&GetElementsByTagName()等方法而XmlNode沒有
不管使用XmlNode的ChildNodes屬性還是XmlElement的GetElementsByTagName()方法獲取的都是XmlNodeList
那這裡就存在獲取的XmlNodeList中的XmlNode到底是什麼類型的問題
可以根據XmlNode的NodeType屬性判斷
如若等於XmlNodeType.Element就可以強轉為XmlElement從而使用XmlElement的方法