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);最终生成:
<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>
//读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的示例代码的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号