CDATA C#操作XML(无命名空间),添加/删除/编辑节点
xml文件 <?xml version="1.0" encoding="utf-8"?> <Books> <Book ID="1"> <Title>C#入门经典</Title> <Price>95.00</Price> </Book> <Book ID="13"> <Title>C#从入门到精通</Title> <Price>145.00</Price> </Book> <Book ID="4"> <Title>Java高级编程</Title> <Price>165.00</Price> </Book> </Books> //添加xml节点 private void addxml() { XmlDocument xmldoc = new XmlDocument(); //加载xml文件 xmldoc.Load(@"E:\Test\Test\tt.xml"); //查找 根节点 Books XmlNode root = xmldoc.SelectSingleNode("Books"); //创建 子节点 Book XmlElement book = xmldoc.CreateElement("Book"); book.SetAttribute("ID", "2");//设置子节点属性 //创建 Book 子节点 Title XmlElement title = xmldoc.CreateElement("Title"); title.InnerText = "C#高级编程"; //title 节点 添加到 root book.AppendChild(title); //创建 Book 子节点 Price XmlElement price = xmldoc.CreateElement("Price"); price.InnerText = "145.00"; //price 节点 添加到 root book.AppendChild(price); //最后把book 节点添加到root root.AppendChild(book); //保存 xmldoc.Save(@"E:\Test\Test\tt.xml"); } //删除xml 节点 private void deletexml() { XmlDocument xmldoc = new XmlDocument(); //加载xml文件 xmldoc.Load(@"E:\Test\Test\tt.xml"); /* //查找到ID=2的节点,删除book 下面的子节点,最后会留下一个空的<book></book> XmlNodeList nodelist = xmldoc.SelectNodes("//Books/Book[@ID=2]");//需了解xpath foreach (XmlNode n in nodelist) { XmlElement xe = (XmlElement)n; //删除属性 xe.RemoveAllAttributes(); //删除节点 xe.RemoveAll(); } */ //删除 book=2 节点(包括book 节点) XmlNodeList nodelist = xmldoc.SelectNodes("//Books/Book[@ID=2]");//需了解xpath foreach (XmlNode n in nodelist) { n.ParentNode.RemoveChild(n); } //保存 xmldoc.Save(@"E:\Test\Test\tt.xml"); } //修改xml 节点 private void updatexml() { XmlDocument xmldoc = new XmlDocument(); //加载xml文件 xmldoc.Load(@"E:\Test\Test\tt.xml"); //查找到ID=2的节点,删除book 下面的子节点,最后会留下一个空的<book></book> XmlNodeList nodelist = xmldoc.SelectNodes("//Books/Book[@ID=3]");//需了解xpath foreach (XmlNode n in nodelist) { XmlElement xe = (XmlElement)n;//XmlElement继承XmlNode //将属性 修改为13 xe.SetAttribute("ID","13"); //查找title节点 XmlNode nn = n.SelectSingleNode("Title"); nn.InnerText = "C#从入门到精通"; } //保存 xmldoc.Save(@"E:\Test\Test\tt.xml"); } 操作节点还有CDATA 需要操作的XML文件: <Info> <Link><![CDATA[<a href="http://www.52taiqiu.com">52台球网</a>]]></Link> </Info> 修改Link中的值 XmlDocument xmldoc = new XmlDocument(); //加载xml文件 xmldoc.Load(@"E:\Test\Test\测试.xml"); XmlNode nameNode = xmldoc.SelectSingleNode("/Info/Link"); nameNode.InnerText = "";//如果是修改,需要把原先的值清空。 nameNode.AppendChild(xmldoc.CreateCDataSection("<a href=\"http://www.52taiqiu.com\">52台球网</a>")); xmldoc.Save(@"E:\Test\Test\测试.xml");