方法一:按照XML的结构一步一步的构建XML文档.
通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的
方法二:直接定影XML文档,然后保存到文件。
通过"XmlDocument"类中的"LoadXml"方法
.aspx前台代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<%@ Page Language=
"C#"
AutoEventWireup=
"true"
CodeFile=
"Default4.aspx.cs"
Inherits=
"Default4"
%>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<head runat=
"server"
>
<title></title>
</head>
<body>
<form id=
"form1"
runat=
"server"
>
<div>
<asp:Button ID=
"btn"
runat=
"server"
OnClick=
"btn1_OnClick"
Text=
"创建xml的第一种方法"
/><br />
<asp:Button ID=
"btn2"
runat=
"server"
OnClick=
"btn2_OnClick"
Text=
"创建xml的第二种方法"
/>
</div>
</form>
</body>
</html>
|
.cs后台代码实现如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
using
System;
using
System.Collections.Generic;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Text;
using
System.Xml;
public
partial
class
Default4 : System.Web.UI.Page
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
}
//创建xml文件方法一
protected
void
btn1_OnClick(
object
sender, EventArgs e)
{
XmlText xmltext;
XmlDocument xmldoc =
new
XmlDocument();
//加入XML的声明段落
XmlNode xmlnode = xmldoc.CreateXmlDeclaration(
"1.0"
,
"gb2312"
,
null
);
xmldoc.AppendChild(xmlnode);
//加入一个根元素
XmlElement xmlelem = xmldoc.CreateElement(
""
,
"bookstore"
,
""
);
xmltext = xmldoc.CreateTextNode(
""
);
xmlelem.AppendChild(xmltext);
xmldoc.AppendChild(xmlelem);
//加入一个子元素
XmlElement xmlelem1 = xmldoc.CreateElement(
""
,
"book"
,
""
);
xmltext = xmldoc.CreateTextNode(
""
);
xmlelem1.AppendChild(xmltext);
//为子元素"book"增加两个属性
xmlelem1.SetAttribute(
"genre"
,
""
,
"fantasy"
);
xmlelem1.SetAttribute(
"ISBN"
,
"2-3631-4"
);
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1);
//创建三个子元素的子元素
XmlElement xmlelem2 = xmldoc.CreateElement(
""
,
"title"
,
""
);
xmltext = xmldoc.CreateTextNode(
"Oberon's Legacy"
);
xmlelem2.AppendChild(xmltext);
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem2);
XmlElement xmlelem3 = xmldoc.CreateElement(
""
,
"author"
,
""
);
xmltext = xmldoc.CreateTextNode(
"Corets, Eva"
);
xmlelem3.AppendChild(xmltext);
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem3);
XmlElement xmlelem4 = xmldoc.CreateElement(
""
,
"price"
,
""
);
xmltext = xmldoc.CreateTextNode(
"5.95"
);
xmlelem4.AppendChild(xmltext);
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem4);
xmldoc.Save(Server.MapPath(
"bookstore.xml"
));
//保存
}
//创建xml文件方法二
protected
void
btn2_OnClick(
object
sender, EventArgs e)
{
XmlDocument xmldoc =
new
XmlDocument();
//创建空的XML文档
xmldoc.LoadXml(
"<?xml version='1.0' encoding='gb2312'?>"
+
"<bookstore>"
+
"<book genre='fantasy' ISBN='2-3631-4'>"
+
"<title>Oberon's Legacy</title>"
+
"<author>Corets, Eva</author>"
+
"<price>5.95</price>"
+
"</book>"
+
"</bookstore>"
);
xmldoc.Save(Server.MapPath(
"bookstore2.xml"
));
//保存
}
}
|
比较:第一种创建起来更加灵活,而第二种创建起来更加方便。最终创建的xml文件如下:(两种方法创建效果都是一样的)
1
2
3
4
5
6
7
8
|
<?
xml
version
=
"1.0"
encoding
=
"gb2312"
?>
<
bookstore
>
<
book
genre
=
"fantasy"
ISBN
=
"2-3631-4"
>
<
title
>Oberon's Legacy</
title
>
<
author
>Corets, Eva</
author
>
<
price
>5.95</
price
>
</
book
>
</
bookstore
>
直接使用DataSet
|