XML读取与写入的案例?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
,,已知有一个xml文件(书店。xml)如下:
& lt; ?xml version=?.0”;编码=癵b2312" ?比; & lt; bookstore> & lt;图书类型=癴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 (“bookstore.xml"); XmlNode根=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=癈S从入门到精通“;//设置文本节点 xe1.AppendChild (xesub1);//添加到& lt; book>节点中 XmlElement xesub2=xmlDoc.CreateElement (“author"); xesub2.InnerText=昂蚪荨? xe1.AppendChild (xesub2); XmlElement xesub3=xmlDoc.CreateElement (“price"); xesub3.InnerText=?8.3”; xe1.AppendChild (xesub3); root.AppendChild (xe1);//添加到& lt; bookstore>节点中 xmlDoc.Save (“bookstore.xml");
//===============================================
结果为:
& lt; ?xml version=?.0”;编码=癵b2312" ?比; & lt; bookstore> & lt;图书类型=癴antasy"ISBN=? - 3631 - 4 -“比; & lt; title>奥伯龙# 39;s Legacy & lt; author> Corets Eva & lt; price> 5.95 & lt;/price> & lt;/book> & lt;图书类型=袄钤藓臁?ISBN=? - 3631 - 4 -“比; & lt; title> CS从入门到精通& lt;/title> & lt; author>候捷& lt;/author> & lt; price> 58.3 & lt;/price> & lt;/book> & lt;/bookstore>
2,修改节点:将类型属性值为“李赞红”的节点的类型值改为“更新李赞红”,将该节点的子节点& lt; author>的文本修改为“亚胜”。
& lt; author>的文本修改为“亚胜”。 XmlNodeList节点列表=xmlDoc.SelectSingleNode (“bookstore") childnodes;//获取书店节点的所有子节点 foreach(节点列表XmlNode xn)//遍历所有子节点 { XmlElement xe=(XmlElement) xn;//将子节点类型转换为XmlElement类型 如果(xe.GetAttribute (“genre")==袄钤藓臁?//如果类型属性值为“李赞红” { xe.SetAttribute (“genre",“更新李赞红“);//则修改该属性为“更新李赞红” XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点 foreach (XmlNode xn1 nls)//遍历 { XmlElement xe2=(XmlElement) xn1;//转换类型 如果(xe2.Name==癮uthor")//如果找到 { xe2.InnerText=把鞘ぁ?//则修改 打破;//找到退出来就可以了 } } 打破; } }
xmlDoc.Save (“bookstore.xml");//保存。
//==================================================
最后结果为:
& lt; ?xml version=?.0”;编码=癵b2312" ?比; & lt; bookstore> & lt;图书类型=癴antasy"ISBN=? - 3631 - 4 -“比; & lt; title>奥伯龙# 39;s Legacy & lt; author> Corets Eva & lt; price> 5.95 & lt;/price> & lt;/book> & lt;图书类型=案吕钤藓臁?ISBN=? - 3631 - 4 -“比; & lt; title> CS从入门到精通& lt;/title> & lt; author>亚胜& lt;/author> & lt; price> 58.3 & lt;/price> & lt;/book> & lt;/bookstore>
3,删除& lt;书类型=癴antasy"ISBN=? - 3631 - 4 -“祝辞节点的类型属性,删除& lt;书类型=案吕钤藓臁?ISBN=? - 3631 - 4 -“祝辞节点。
XmlNodeList xnl=xmlDoc.SelectSingleNode (“bookstore") childnodes; foreach (xnl XmlNode xn) { XmlElement xe=(XmlElement xn); 如果(xe.GetAttribute (“genre")==癴antasy") { xe.RemoveAttribute (“genre");//删除类型属性 } else if (xe.GetAttribute (“genre")==案吕钤藓臁? { xe.RemoveAll();//删除该节点的全部内容 } } xmlDoc.Save (“bookstore.xml");XML读取与写入的案例