• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
萌子
记录程序路上的点点滴滴……
博客园    首页    新随笔    联系   管理    订阅  订阅

操作XML文件

Code
  1 using System;    
  2 using System.Collections;    
  3 using System.ComponentModel;    
  4 using System.Data;    
  5 using System.Drawing;    
  6 using System.Web;    
  7 using System.Web.SessionState;    
  8 using System.Web.UI;    
  9 using System.Web.UI.WebControls;    
 10 using System.Web.UI.HtmlControls;    
 11 using System.Xml;    
 12 private XmlDocument xmlDoc;    
 13    
 14 //load xml file    
 15 private void LoadXml()    
 16 {    
 17 xmlDoc=new XmlDocument();    
 18 xmlDoc.Load(Server.MapPath("User.xml"));    
 19 }    
 20    
 21    
 22 //添加节点    
 23 private void AddElement()    
 24 {    
 25    
 26 LoadXml();    
 27    
 28 XmlNode xmldocSelect=xmlDoc.SelectSingleNode("user");    
 29    
 30 XmlElement el=xmlDoc.CreateElement("person"); //添加person节点    
 31 el.SetAttribute("name","风云"); //添加person节点的属性"name"    
 32 el.SetAttribute("sex","女"); //添加person节点的属性 "sex"    
 33 el.SetAttribute("age","25"); //添加person节点的属性 "age"    
 34    
 35 XmlElement xesub1=xmlDoc.CreateElement("pass"); //添加person节点的里的节点    
 36 xesub1.InnerText="123";//设置文本节点    
 37 el.AppendChild(xesub1);    
 38 XmlElement xesub2=xmlDoc.CreateElement("Address");    
 39 xesub2.InnerText="昆明";//设置文本节点    
 40 el.AppendChild(xesub2);    
 41    
 42 xmldocSelect.AppendChild(el);    
 43 xmlDoc.Save(Server.MapPath("user.xml"));    
 44    
 45    
 46 }    
 47    
 48    
 49    
 50    
 51 //修改节点    
 52 private void UpdateElement()    
 53 {    
 54 LoadXml();    
 55 XmlNodeList nodeList=xmlDoc.SelectSingleNode("user").ChildNodes;//获取bookstore节点的所有子节点    
 56 foreach(XmlNode xn in nodeList)//遍历所有子节点    
 57 {    
 58 XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型    
 59 if(xe.GetAttribute("name")=="风云")//如果name属性值为“风云”    
 60 {    
 61 xe.SetAttribute("name","发明");    
 62    
 63    
 64 //如果下面有子节点在下走    
 65 XmlNodeList nls=xe.ChildNodes;//继续获取xe子节点的所有子节点    
 66 foreach(XmlNode xn1 in nls)//遍历    
 67 {    
 68 XmlElement xe2=(XmlElement)xn1;//转换类型    
 69 if(xe2.Name=="pass")//如果找到    
 70 {    
 71 xe2.InnerText="66666";//则修改    
 72 break;    
 73    
 74 }    
 75 }    
 76    
 77 break;    
 78 }    
 79 }    
 80 xmlDoc.Save(Server.MapPath("user.xml"));//保存    
 81 }    
 82    
 83    
 84 //删出节点    
 85 private void deleteNode()    
 86 {    
 87    
 88 LoadXml();    
 89 XmlNodeList xnl=xmlDoc.SelectSingleNode("user").ChildNodes;    
 90    
 91 foreach(XmlNode xn in xnl)    
 92 {    
 93 XmlElement xe=(XmlElement)xn;    
 94    
 95 if(xe.GetAttribute("name")=="发明")    
 96 {    
 97 //xe.RemoveAttribute("name");//删除name属性    
 98 xe.RemoveAll();//删除该节点的全部内容    
 99    
100    
101 break;    
102 }    
103    
104 }    
105 xmlDoc.Save(Server.MapPath("user.xml"));//保存    
106 }    
107    
108 private void showIt()    
109 {    
110 LoadXml();    
111 XmlNode xn=xmlDoc.SelectSingleNode("user");    
112    
113 XmlNodeList xnl=xn.ChildNodes;    
114    
115 foreach(XmlNode xnf in xnl)    
116 {    
117 XmlElement xe=(XmlElement)xnf;    
118 // Console.WriteLine(xe.GetAttribute("name"));//显示属性值    
119 // Console.WriteLine(xe.GetAttribute("sex"));    
120 //    
121 // XmlNodeList xnf1=xe.ChildNodes;    
122 // foreach(XmlNode xn2 in xnf1)    
123 // {    
124 // Console.WriteLine(xn2.InnerText);//显示子节点点文本    
125 // }    
126    
127 }    
128    
129 }  
posted @ 2009-03-30 14:42  萌子  阅读(133)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3