详解在XML文档中替换元素名称的方法(图)

互联网 17-3-24
不要小看这个操作,其实是不太容易的。请注意,我们是要替换掉元素的名称,而不是元素的值。

XML的内容在内存中是一个DOM树,要替换掉一个元素,其实是要新建一个元素,并且将原先元素的所有子元素都复制过来。在LINQ TO XML中用ReplaceWith来实现

using System;  using System.Linq;  using System.Xml.Linq;  namespace ConsoleApplication1  {      class Program      {          static void Main(string[] args)          {              XDocument doc = new XDocument(                  new XElement("Tables"                      , new XElement("Table"                          , new XElement("Name", "Orders")                          , new XElement("Owner", "chenxizhang"))                      , new XElement("Table"                          , new XElement("Name", "Customers")                          , new XElement("Owner", "Allen"))                      ));              Console.WriteLine("原始的XML内容:");              Console.WriteLine(doc);              //改变Tables元素名称为Items              Console.WriteLine("改变了根元素之后显示的效果:");              XElement root = doc.Element("Tables");              root.ReplaceWith(new XElement("Items", root.Elements("Table")));              Console.WriteLine(doc);              //改变Table元素名称为Item               Console.WriteLine("改变了子元素之后显示的效果:");              foreach (var item in doc.Elements("Items").Descendants().ToList())//这里一定要先ToList              {                  item.ReplaceWith(new XElement("Item", item.Descendants()));              }              Console.WriteLine(doc);              Console.Read();          }      }  }

以上就是详解在XML文档中替换元素名称的方法(图)的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:xml文件正确性验证类的示例代码分析

相关资讯