您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> asp.net编程 >> 正文

asp.net操作xml增删改示例分享

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 这篇文章主要介绍了asp.net操作xml增删改示例,需要的朋友可以参考下

  代码如下: using System;  using System.Collections;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Web;  using System.Web.SessionState;  using System.Web.UI;  using System.Web.UI.WebControls;  using System.Web.UI.HtmlControls;  using System.Xml;  private XmlDocument xmlDoc;  //load xml file  private void LoadXml()  {      xmlDoc=new XmlDocument();      xmlDoc.Load(Server.MapPath("User.xml"));  }  //添加节点  private void AddElement()  {      LoadXml();      XmlNode xmldocSelect=xmlDoc.SelectSingleNode("user");      XmlElement el=xmlDoc.CreateElement("person");     //添加person节点      el.SetAttribute("name","风云");     //添加person节点的属性"name"      el.SetAttribute("sex","女");     //添加person节点的属性 "sex"      el.SetAttribute("age","25");     //添加person节点的属性 "age"      XmlElement xesub1=xmlDoc.CreateElement("pass");     //添加person节点的里的节点      xesub1.InnerText="123";    //设置文本节点      el.AppendChild(xesub1);      XmlElement xesub2=xmlDoc.CreateElement("Address");      xesub2.InnerText="昆明";    //设置文本节点      el.AppendChild(xesub2);      xmldocSelect.AppendChild(el);      xmlDoc.Save(Server.MapPath("user.xml"));  }  //修改节点  private void UpdateElement()  {      LoadXml();      XmlNodeList nodeList=xmlDoc.SelectSingleNode("user").ChildNodes;    //获取bookstore节点的所有子节点      foreach(XmlNode xn in nodeList)    //遍历所有子节点      {          XmlElement xe=(XmlElement)xn;    //将子节点类型转换为XmlElement类型          if(xe.GetAttribute("name")=="风云")     //如果name属性值为“风云”          {              xe.SetAttribute("name","发明"); //如果下面有子节点在下走              XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点              foreach(XmlNode xn1 in nls)//遍历              {                  XmlElement xe2=(XmlElement)xn1;//转换类型                  if(xe2.Name=="pass")//如果找到                  {                      xe2.InnerText="66666";//则修改                      break;                  }              }              break;          }      }      xmlDoc.Save(Server.MapPath("user.xml"));//保存  }  //删出节点  private void deleteNode()  {      LoadXml();      XmlNodeList xnl=xmlDoc.SelectSingleNode("user").ChildNodes;      foreach(XmlNode xn in xnl)      {          XmlElement xe=(XmlElement)xn;          if(xe.GetAttribute("name")=="发明")          {              //xe.RemoveAttribute("name");//删除name属性              xe.RemoveAll();//删除该节点的全部内容              break;          }      }      xmlDoc.Save(Server.MapPath("user.xml"));//保存  }  private void showIt()  {      LoadXml();      XmlNode xn=xmlDoc.SelectSingleNode("user");      XmlNodeList xnl=xn.ChildNodes;      foreach(XmlNode xnf in xnl)      {          XmlElement xe=(XmlElement)xnf;          // Console.WriteLine(xe.GetAttribute("name"));//显示属性值          // Console.WriteLine(xe.GetAttribute("sex"));          // // XmlNodeList xnf1=xe.ChildNodes;          // foreach(XmlNode xn2 in xnf1) //          {              // Console.WriteLine(xn2.InnerText);              //显示子节点点文本      // }      }  }      Xml的样式:     代码如下: <?xml version="1.0" encoding="gb2312"?>  <user>      <person> </person>      <person name="风拉" sex="男" age="25">          <pass>123</pass>          <Address>大明</Address>      </person>      <person name="风云" sex="女" age="25">          <pass>123</pass>          <Address>昆明</Address>      </person>  </user>