您好,登錄后才能下訂單哦!
小編給大家分享一下Linq如何讀取XML,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Linq To XML的核心類XElement,一個XElement表示一個節點,new XElement("Order"),創建一個名字為Order的標簽,調用Add增加子節點,也是XElement 對象!
下面是幾種LINQ操作XML的常見形式。
///寫文件(生成節點性質的)
XElement ePersons = new XElement("Persons"); XElement ptom = new XElement("Person"); //增加一個Person節點 ptom.Add(new XElement("Name", "Tom"));//在ptom下再增加子節點 ptom.Add(new XElement("Age", "18")); ePersons.Add(ptom);
XElement pjack = new XElement("Person"); pjack.Add(new XElement("Name", "Jack")); pjack.Add(new XElement("Age", "20")); ePersons.Add(pjack);
最終生成:
Tom 18 Jack 20
///寫文件(生成屬性性質的)
XElement ptom = new XElement("Person"); ptom.Add(new XAttribute("Name", "tom"));//添加XAttribute就生成屬性 ptom.Add(new XAttribute("Age", "18")); ePersons.Add(ptom); XElement pjack = new XElement("Person"); pjack.Add(new XAttribute("Name", "jack")); pjack.Add(new XAttribute("Age", "20")); ePersons.Add(pjack);
最終生成:
<Persons>
<Person Name="tom" Age="18"/>
<Person Name="jack" Age="20"/>
</Persons>
//讀XML 讀取節點格式的值
XDocument xd= XDocument.Load("XML文件地址"); foreach (XElement item in xd.Root.Descendants("Person"))//得到每一個Person節點,得到這個節點再取他的Name的這個節點的值 { Console.WriteLine(item.Element("Age").Value);//Person的節點的下得節點為Name的 } 注釋:doc.root(得到根節點的XElement對象).XElement(“tagname”)方法得到的就是節點下第一個名字為tagname的節點。 如果doc.root。XElements(復數形式)就是得到所有的子節點,Descendants("“tagname”")子孫節點
//讀XML 讀取屬性格式的值
XDocument xd= XDocument.Load(@"D:\Program Files\Demo\Demo\ConsoleApplication2\XMLFile2.xml"); foreach (XElement item in xd.Root.Descendants("Person"))//得到每一個Person節點,得到這個節點再取他的Name的這個節點的值 { Console.WriteLine(item.Attribute("Age").Value);//Person的節點的下得節點為Name的 }
以上是Linq如何讀取XML的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。