asp.net 2.0 对XML文件的读写修改操作
2007-03-21 16:15 ruinet 阅读(995) 评论(0) 收藏 举报xml文件格式如下:
1
<?xml version="1.0" encoding="utf-8"?>
2
<User>
3
<Person ID="1">
4
<Name>zhangrui</Name>
5
<Age>22</Age>
6
<Sex>男</Sex>
7
<Tel>13411109900</Tel>
8
</Person>
9
<Person ID="2">
10
<Name>王萍</Name>
11
<Age>18</Age>
12
<Sex>女</Sex>
13
<Tel>020412312332</Tel>
14
</Person>
15
</User>
<?xml version="1.0" encoding="utf-8"?>2
<User>3
<Person ID="1">4
<Name>zhangrui</Name>5
<Age>22</Age>6
<Sex>男</Sex>7
<Tel>13411109900</Tel>8
</Person>9
<Person ID="2">10
<Name>王萍</Name>11
<Age>18</Age>12
<Sex>女</Sex>13
<Tel>020412312332</Tel>14
</Person>15
</User>A 加载XML文档
1
Imports System.Xml
2
'定义对象
3
Private XmlDoc As XmlDocument
4
5
Private Sub LoadXml()
6
XmlDoc = New XmlDataDocument
7
XmlDoc.Load(Server.MapPath("User.xml"))
8
End Sub
Imports System.Xml2
'定义对象3
Private XmlDoc As XmlDocument4

5
Private Sub LoadXml()6
XmlDoc = New XmlDataDocument7
XmlDoc.Load(Server.MapPath("User.xml"))8
End SubB 绑定数据到GridView控件
1
Private Sub BindData()
2
Dim ds As New DataSet
3
ds.ReadXml(Server.MapPath("User.xml"))
4
GridView1.DataSource = ds.Tables(0)
5
GridView1.DataBind()
6
End Sub
Private Sub BindData()2
Dim ds As New DataSet3
ds.ReadXml(Server.MapPath("User.xml"))4
GridView1.DataSource = ds.Tables(0)5
GridView1.DataBind()6
End Sub在数据层中读取xml文档
ds.ReadXml(System.Web.HttpContext.Current.Server.MapPath("../Roles.xml")) 1
Private Sub Add(ByVal Name As String, ByVal Age As Int32, ByVal Sex As String, ByVal Tel As String)
2
LoadXml()
3
Dim Node As XmlNode = XmlDoc.SelectSingleNode("User")
4
Dim Nodes As XmlNodeList = XmlDoc.SelectSingleNode("User").ChildNodes
5
Dim elPerson As XmlElement = XmlDoc.CreateElement("Person")
6
7
Dim elName As XmlElement = XmlDoc.CreateElement("Name")
8
Dim elAge As XmlElement = XmlDoc.CreateElement("Age")
9
Dim elSex As XmlElement = XmlDoc.CreateElement("Sex")
10
Dim elTel As XmlElement = XmlDoc.CreateElement("Tel")
11
12
elPerson.SetAttribute("ID", Nodes.Count + 1)
13
14
elName.InnerText = Name
15
elAge.InnerText = Age
16
elSex.InnerText = Sex
17
elTel.InnerText = Tel
18
19
elPerson.AppendChild(elName)
20
elPerson.AppendChild(elAge)
21
elPerson.AppendChild(elSex)
22
elPerson.AppendChild(elTel)
23
24
Node.AppendChild(elPerson)
25
26
XmlDoc.Save(Server.MapPath("User.xml"))
27
28
End Sub
C 修改XML文档
Private Sub Add(ByVal Name As String, ByVal Age As Int32, ByVal Sex As String, ByVal Tel As String)2
LoadXml()3
Dim Node As XmlNode = XmlDoc.SelectSingleNode("User")4
Dim Nodes As XmlNodeList = XmlDoc.SelectSingleNode("User").ChildNodes5
Dim elPerson As XmlElement = XmlDoc.CreateElement("Person")6

7
Dim elName As XmlElement = XmlDoc.CreateElement("Name")8
Dim elAge As XmlElement = XmlDoc.CreateElement("Age")9
Dim elSex As XmlElement = XmlDoc.CreateElement("Sex")10
Dim elTel As XmlElement = XmlDoc.CreateElement("Tel")11

12
elPerson.SetAttribute("ID", Nodes.Count + 1)13

14
elName.InnerText = Name15
elAge.InnerText = Age16
elSex.InnerText = Sex17
elTel.InnerText = Tel18

19
elPerson.AppendChild(elName)20
elPerson.AppendChild(elAge)21
elPerson.AppendChild(elSex)22
elPerson.AppendChild(elTel)23

24
Node.AppendChild(elPerson)25

26
XmlDoc.Save(Server.MapPath("User.xml"))27

28
End Sub 1
Private Sub Edit(ByVal Name As String, ByVal Age As Int32, ByVal Sex As String, ByVal Tel As String)
2
LoadXml()
3
Dim Node As XmlNode = XmlDoc.SelectSingleNode("//Person[Name='" + Name + "']")
4
If Not IsNothing(Node) Then
5
Node.ChildNodes(1).InnerText = Age
6
Node.ChildNodes(2).InnerText = Sex
7
Node.ChildNodes(3).InnerText = Tel
8
End If
9
XmlDoc.Save(Server.MapPath("User.xml"))
10
End Sub
Private Sub Edit(ByVal Name As String, ByVal Age As Int32, ByVal Sex As String, ByVal Tel As String)2
LoadXml()3
Dim Node As XmlNode = XmlDoc.SelectSingleNode("//Person[Name='" + Name + "']")4
If Not IsNothing(Node) Then5
Node.ChildNodes(1).InnerText = Age6
Node.ChildNodes(2).InnerText = Sex7
Node.ChildNodes(3).InnerText = Tel8
End If9
XmlDoc.Save(Server.MapPath("User.xml"))10
End Sub

浙公网安备 33010602011771号