.Net XML操作

一、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();
        }
複製代碼
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章