.net创建XML文件的两种方法
方法一:按照XML的结构一步一步的构建XML文档.
通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的
方法二:直接定影XML文档,然后保存到文件。
通过"XmlDocument"类中的"LoadXml"方法
.aspx 的前台代码

Code
1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default4.aspx.cs" Inherits="Default4" %>
2
3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5 <html xmlns="http://www.w3.org/1999/xhtml">
6 <head runat="server">
7 <title></title>
8 </head>
9 <body>
10 <form id="form1" runat="server">
11 <div>
12 <asp:Button ID="btn" runat="server" OnClick="btn1_OnClick" Text="创建xml的第一种方法" /><br />
13 <asp:Button ID="btn2" runat="server" OnClick="btn2_OnClick" Text="创建xml的第二种方法" />
14 </div>
15 </form>
16 </body>
17 </html>
C#的后台代码

Code
1
using
System;
2
using System.Collections.Generic;
3
using System.Web;
4
using System.Web.UI;
5
using System.Web.UI.WebControls;
6
using System.Text;
7
using System.Xml;
8
9
public partial class Default4 : System.Web.UI.Page
10


{
11
protected void Page_Load(object sender, EventArgs e)
12

{
13
14
}
15
//创建xml文件方法一
16
protected void btn1_OnClick(object sender, EventArgs e)
17

{
18
XmlText xmltext;
19
XmlDocument xmldoc = new XmlDocument();
20
21
//加入XML的声明段落
22
XmlNode xmlnode = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);
23
xmldoc.AppendChild(xmlnode);
24
25
//加入一个根元素
26
XmlElement xmlelem = xmldoc.CreateElement("", "bookstore", "");
27
xmltext = xmldoc.CreateTextNode("");
28
xmlelem.AppendChild(xmltext);
29
xmldoc.AppendChild(xmlelem);
30
31
//加入一个子元素
32
XmlElement xmlelem1 = xmldoc.CreateElement("", "book", "");
33
xmltext = xmldoc.CreateTextNode("");
34
xmlelem1.AppendChild(xmltext);
35
//为子元素"book"增加两个属性
36
xmlelem1.SetAttribute("genre", "", "fantasy");
37
xmlelem1.SetAttribute("ISBN", "2-3631-4");
38
39
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1);
40
41
//创建三个子元素的子元素
42
XmlElement xmlelem2 = xmldoc.CreateElement("", "title", "");
43
xmltext = xmldoc.CreateTextNode("Oberon's Legacy");
44
xmlelem2.AppendChild(xmltext);
45
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem2);
46
47
XmlElement xmlelem3 = xmldoc.CreateElement("", "author", "");
48
xmltext = xmldoc.CreateTextNode("Corets, Eva");
49
xmlelem3.AppendChild(xmltext);
50
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem3);
51
52
XmlElement xmlelem4 = xmldoc.CreateElement("", "price", "");
53
xmltext = xmldoc.CreateTextNode("5.95");
54
xmlelem4.AppendChild(xmltext);
55
xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem4);
56
//保存
57
xmldoc.Save(Server.MapPath("bookstore.xml")); }
58
59
//创建xml文件方法二
60
protected void btn2_OnClick(object sender, EventArgs e)
61

{
62
XmlDocument xmldoc = new XmlDocument(); //创建空的XML文档
63
xmldoc.LoadXml("<?xml version='1.0' encoding='gb2312'?>" +
64
"<bookstore>" +
65
"<book genre='fantasy' ISBN='2-3631-4'>" +
66
"<title>Oberon's Legacy</title>" +
67
"<author>Corets, Eva</author>" +
68
"<price>5.95</price>" +
69
"</book>" +
70
"</bookstore>");
71
xmldoc.Save(Server.MapPath("bookstore2.xml")); //保存
72
xmldoc.Save(HttpContext.Current.Server.MapPath("bookstore3.xml"));// 一样也可以保存
73
}
74
}
两种方法效果一样。
读写 XML 小结

Code
1 using System.Xml;
2 //初始化一个xml实例
3 XmlDocument xml=new XmlDocument();
4
5 //导入指定xml文件
6 xml.Load(path);
7 xml.Load(HttpContext.Current.Server.MapPath("../7in10.xml"));
8
9 //指定一个节点
10 XmlNode root=xml.SelectSingleNode("/root");
11
12 //获取节点下所有直接子节点
13 XmlNodeList childlist=root.ChildNodes;
14
15 //判断该节点下是否有子节点
16 root.HasChildNodes;
17
18 //获取同名同级节点集合
19 XmlNodeList nodelist=xml.SelectNodes("/Root/News");
20
21 //生成一个新节点
22 XmlElement node=xml.CreateElement("News");
23
24 //将节点加到指定节点下,作为其子节点
25 root.AppendChild(node);
26
27 //将节点加到指定节点下某个子节点前
28 root.InsertBefore(node,root.ChildeNodes[i]);
29
30 //为指定节点的新建属性并赋值
31 node.SetAttribute("id","11111");
32
33 //为指定节点添加子节点
34 root.AppendChild(node);
35
36 //获取指定节点的指定属性值
37 string id=node.Attributes["id"].Value;
38
39 //获取指定节点中的文本
40 string content=node.InnerText;
41
42 //保存XML文件
43 xml.Save(path);
44 xml.Save(HttpContext.Current.Server.MapPath("../7in10.xml"));
Tag标签: ASP.NET XML