小編給大家分享一下Linq如何讀取XML,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
10年積累的網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶(hù)對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶(hù)得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先建設(shè)網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有鄂城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。Linq To XML的核心類(lèi)XElement,一個(gè)XElement表示一個(gè)節(jié)點(diǎn),new XElement("Order"),創(chuàng)建一個(gè)名字為Order的標(biāo)簽,調(diào)用Add增加子節(jié)點(diǎn),也是XElement 對(duì)象!
下面是幾種LINQ操作XML的常見(jiàn)形式。
///寫(xiě)文件(生成節(jié)點(diǎn)性質(zhì)的)
XElement ePersons = new XElement("Persons"); XElement ptom = new XElement("Person"); //增加一個(gè)Person節(jié)點(diǎn) ptom.Add(new XElement("Name", "Tom"));//在ptom下再增加子節(jié)點(diǎn) 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
///寫(xiě)文件(生成屬性性質(zhì)的)
XElement ptom = new XElement("Person"); ptom.Add(new XAttribute("Name", "tom"));//添加X(jué)Attribute就生成屬性 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);
最終生成:
//讀XML 讀取節(jié)點(diǎn)格式的值
XDocument xd= XDocument.Load("XML文件地址"); foreach (XElement item in xd.Root.Descendants("Person"))//得到每一個(gè)Person節(jié)點(diǎn),得到這個(gè)節(jié)點(diǎn)再取他的Name的這個(gè)節(jié)點(diǎn)的值 { Console.WriteLine(item.Element("Age").Value);//Person的節(jié)點(diǎn)的下得節(jié)點(diǎn)為Name的 } 注釋?zhuān)篸oc.root(得到根節(jié)點(diǎn)的XElement對(duì)象).XElement(“tagname”)方法得到的就是節(jié)點(diǎn)下第一個(gè)名字為tagname的節(jié)點(diǎn)。 如果doc.root。XElements(復(fù)數(shù)形式)就是得到所有的子節(jié)點(diǎn),Descendants("“tagname”")子孫節(jié)點(diǎn)
//讀XML 讀取屬性格式的值
XDocument xd= XDocument.Load(@"D:\Program Files\Demo\Demo\ConsoleApplication2\XMLFile2.xml"); foreach (XElement item in xd.Root.Descendants("Person"))//得到每一個(gè)Person節(jié)點(diǎn),得到這個(gè)節(jié)點(diǎn)再取他的Name的這個(gè)節(jié)點(diǎn)的值 { Console.WriteLine(item.Attribute("Age").Value);//Person的節(jié)點(diǎn)的下得節(jié)點(diǎn)為Name的 }
以上是Linq如何讀取XML的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!