.net创建XML文件的两种方法

精贴 置顶
471 0

方法一:按照XML的结构一步一步的构建XML文档.
    通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的

方法一:按照XML的结构一步一步的构建XML文档.
    通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的

 

方法二:直接定影XML文档,然后保存到文件。
        通过"XmlDocument"类中的"LoadXml"方法

 

.aspx前台代码:

<%@ 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">

<html xmlns="http://www.w3.org/1999/xhtml">
<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后台代码实现如下:

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文件如下:(两种方法创建效果都是一样的)

<?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>

 

方法二:直接定影XML文档,然后保存到文件。
        通过"XmlDocument"类中的"LoadXml"方法

 

.aspx前台代码:

<%@ 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">

<html xmlns="http://www.w3.org/1999/xhtml">
<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后台代码实现如下:

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文件如下:(两种方法创建效果都是一样的)

<?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>

  • 没有任何评论
今日天气 ···

···

···

···

热门排行
CSS cursor鼠标样式一览表 2012/6/25
.NET后台写JS代码 2011/11/3
网站地址多出jdfwkey的问题解析及... 2010/8/25
百度、google、Yahoo网站地图制作... 2011/1/30
数据库xxx的日志已满,请备份该数... 2013/7/19
<a>标签的伪类书写顺序问题... 2010/9/4
CEO名言 2010/8/31
什么是长尾关键词? 2010/9/24
Mysql 主从数据库同步 2010/9/12
用ASP实现网页BBS 2010/11/1
博主推荐
网站title标题如何正确修改不会被... 2013/8/26
ASP .NET MYSQL 的简单分页 并不... 2013/8/19
网站有弹窗广告这样的站点,百度... 2013/8/17
做淘宝SEO优化需要注意的8大问题 2013/8/17
淘宝网怎么做SEO优化 2013/8/17
站长们要学习的“苍井空精神” 2013/8/17
苹果公司今日发布了iOS 7第五个开... 2013/8/7
小米1刷V5系统WIFI不能连接解决办... 2013/8/1
本博客手机版上线咯!会员后台也... 2013/7/31
Win7系统环境安装配置PHP开发环境... 2013/7/29
随便看看
C#正则表达式小结 2011/1/8
VS快捷键大全 2010/8/25
关系运算符 2010/10/18
A potentially dangerous Reques... 2013/11/16
DBNull与Null的区别 2010/12/6
备份和恢复Windows中的IIS服务器... 2010/9/2
傍大款 2013/6/17
用C#实现查询Google收录量 2010/9/1
数据库查询语言(2) 2010/10/23
Java base64 编码和解码案例 2013/6/26
北京 上海 杭州 深圳 广州 成都