Detailed introduction to the sample code for Linq to read XML

黄舟
Release: 2017-03-16 17:09:04
Original
1310 people have browsed it

Linq To XML's core class XElement, one XElement represents a node, new XElement("Order"), creates a named Order Label, call Add to add child nodes, which is also an XElement object!

The following are several common forms of LINQ operating XML.

///Write file (generate node properties)

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);
Copy after login
XElement pjack = new XElement("Person");
pjack.Add(new XElement("Name", "Jack"));
pjack.Add(new XElement("Age", "20"));
ePersons.Add(pjack);
Copy after login

Final generation:

Tom
18


Jack
20
Copy after login


///Write file (generate attributesNature)

 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);
Copy after login

Final generation:

<span style="color: #0000ff;"><</span><span style="color: #800000;">Persons</span><span style="color: #0000ff;">></span><br><span style="color: #0000ff;"><</span><span style="color: #800000;">Person </span><span style="color: #ff0000;">Name</span><span style="color: #0000ff;">="tom"</span><span style="color: #ff0000;"> Age</span><span style="color: #0000ff;">="18"</span><span style="color: #0000ff;">/></span><br><span style="color: #0000ff;"><</span><span style="color: #800000;">Person </span><span style="color: #ff0000;">Name</span><span style="color: #0000ff;">="jack"</span><span style="color: #ff0000;"> Age</span><span style="color: #0000ff;">="20"</span><span style="color: #0000ff;">/></span><br><span style="color: #0000ff;"></</span><span style="color: #800000;">Persons</span><span style="color: #0000ff;">></span>
Copy after login

//Read XML and read the value of node format

 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”")子孙节点
Copy after login

//Read XML and read the value of attribute format

 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的
           }
Copy after login

The above is the detailed content of Detailed introduction to the sample code for Linq to read XML. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!