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);
//
显示子节点点文本
//
}
} }
c#对xml多属性节点的增加,删除,修改操作源码
最新推荐文章于 2022-05-12 11:21:39 发布