一、XML文件操作中與.Net中對應的類
微軟的.NET框架在System.xml命名空間提供了一系列的類用於Dom的實現。
以下給出XML文檔的組成部分對應.NET中的類:
XML文檔組成部分 | 對應.net中的類 |
處理指令 | XmlProcessingInstruction |
專指元素節點 | XmlElement |
屬性 | XmlAttribute |
文本節點 | XmlText |
節點 | XmlNode |
文檔 | XmlDocument |
XmlWriter 對象的特性 | XmlWriterSettings |
註釋 | XmlComment |
二、Xml文檔各種處理類
1、XmlNode節點類:包括元素節點、文本節點、屬性節點等等。
這個類可以說是.Net Xml操作的根基,大部分Xml操作類都繼承自此類。很多類都重寫了該類的方法等。
這個類成員屬性,方法都很多,但是都是非常簡單的,無非是對Xml文檔的添加,修改,查詢,保存等操作。因此,直接通過看MSDN就足夠:
XmlNode:http://msdn.microsoft.com/zh-cn/library/system.xml.xmlnode_members(v=vs.80).aspx
另外,基本上,所有類都繼承於此類,都大同小異。
2、XmlElement繼承了XmlNode,專指元素節點。
XmlElement的特點:
- XmlElement繼承自XmlLinkedNode又繼承自XmlNode類。
- XmlElement專指元素節點,Xml節點有多種類型:屬性節點、註釋節點、文本節點、元素節點等。也就是XmlNode是這多種節點的統稱。
- XmlElement是具現類,可以直接實例化,而XmlNode是抽象類,必須通過XmlDocument的某些方法返回。
本處僅僅寫個最簡單的示例:
示例Xml文檔:
<?xml version="1.0" encoding="gb2312" ?> <Article> <author age="30">張三</author> <length>12000</length> <price>42</price> </Article>
簡單示例:
static void Main(string[] args) { //XmlDocument XmlDocument doc = new XmlDocument(); doc.Load(@"D:\Articles.xml"); //XmlNode出場 XmlNode node = doc.SelectSingleNode("Article"); string author = node.FirstChild.InnerText; Console.WriteLine(author); //輸出 張三 //XmlElement出場 XmlElement element = doc.DocumentElement; //根元素節點 Console.WriteLine(element.Name); //XmlAttribute出場 XmlAttribute attribute = element.FirstChild.Attributes[0]; //輸出30 Console.WriteLine(attribute.Value); //XmlComment出場 XmlComment comment = doc.CreateComment("這是字數!"); element.PrependChild(comment); doc.Save(@"D:\123123.xml"); Console.ReadKey(); }