介绍
这篇文章主要介绍了XML中增,删,改的示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
样本XML文件(书店。xml)
& lt; ? xml version=?.0“,编码=癵b2312" ?比; & lt; bookstore> & lt;才能book 类型=癴antasy", ISBN=? - 3631 - 4 -“比; ,,,& lt; title>奥伯龙# 39;s Legacy ,,,& lt; author> Corets,, Eva ,,,& lt; price> 5.95 & lt;/price> & lt;才能/book> & lt;/bookstore>
1,往& lt; bookstore>节点中插入一个& lt; book>节点:
XmlDocument xmlDoc =, new XmlDocument (); ,xmlDoc.Load (“E: \ \ bookstore.xml"); ,XmlNode root =, xmlDoc.SelectSingleNode (“bookstore");//查找& lt; bookstore> ,XmlElement xe1 =, xmlDoc.CreateElement (“book");//创建一个& lt; book>节点 ,xe1.SetAttribute (“genre",,“李赞红“);//设置该节点类型属性 ,xe1.SetAttribute (“ISBN",,, 2 - 3631 - 4“);//设置该节点ISBN属性 ,XmlElement xesub1 =, xmlDoc.CreateElement (“title");=,xesub1.InnerText “CS从入门到精通“;//设置文本节点 ,xe1.AppendChild (xesub1);//添加到& lt; book>节点中 ,XmlElement xesub2 =, xmlDoc.CreateElement (“author");=,xesub2.InnerText “候捷“; ,xe1.AppendChild (xesub2); ,XmlElement xesub3 =, xmlDoc.CreateElement (“price");=,xesub3.InnerText “58.3”; ,xe1.AppendChild (xesub3); ,root.AppendChild (xe1);//添加到& lt; bookstore>节点中 ,xmlDoc.Save (“E: \ \ bookstore.xml");
修改后的xml文件为:
& lt; ? xml version=?.0“,编码=癵b2312" ?比; & lt; bookstore> & lt;才能book 类型=癴antasy", ISBN=? - 3631 - 4 -“比; ,,,& lt; title>奥伯龙# 39;s Legacy & lt; author> Corets, Eva ,,,,& lt; price> 5.95 & lt;/price> & lt;才能/book> & lt;才能book 类型=袄钤藓臁癐SBN=? - 3631 - 4 -“比; ,,,& lt; title> CS从入门到精通& lt;/title> ,,,& lt; author>候捷& lt;/author> ,,,& lt; price> 58.3 & lt;/price> & lt;才能/book> & lt;/bookstore>
2,修改节点:将类型属性值为“李赞红”的节点的类型值改为“更新李赞红”,将该节点的子节点& lt; author>的文本修改为“亚胜”。
XmlDocument xmlDoc =, new XmlDocument (); ,,,,,,,,,,,xmlDoc.Load (“E: \ \ bookstore.xml"); ,,,,,,,,,,,XmlNodeList nodeList =, xmlDoc.SelectSingleNode (“bookstore") childnodes;//获取书店节点的所有子节点 ,,,,,,,,,,,foreach (XmlNode xn 节点列表拷贝)//遍历所有子节点 ,,,,,,,,,,,{ ,,,,,,,,,,,,,,,XmlElement xe =, (XmlElement) xn;//将子节点类型转换为XmlElement类型 ,,,,,,,,,,,,,,,if (xe.GetAttribute (“genre"),==,“李赞红“)//如果类型属性值为“李赞红” ,,,,,,,,,,,,,,,{ ,,,,,,,,,,,,,,,,,,,xe.SetAttribute (“genre",,“更新李赞红“);//则修改该属性为“更新李赞红” ,,,,,,,,,,,,,,,,,,,XmlNodeList nls =, xe.ChildNodes;//继续获取xe子节点的所有子节点 ,,,,,,,,,,,,,,,,,,,foreach (XmlNode xn1  nls拷贝)//遍历 ,,,,,,,,,,,,,,,,,,,{ ,,,,,,,,,,,,,,,,,,,,,,,XmlElement xe2 =, (XmlElement) xn1;//转换类型//标题、作者、价格都会在xe2.Name中取到 ,,,,,,,,,,,,,,,,,,,,,,,if (==xe2.Name “author")//如果找到 ,,,,,,,,,,,,,,,,,,,,,,,{ null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullXML中增,删,改的示例