asp.net创建XML文件的方法小结

所属分类: 网络编程 / ASP.NET 阅读数: 910
收藏 0 赞 0 分享

本文实例讲述了asp.net创建XML文件的方法。分享给大家供大家参考,具体如下:

方法一:按照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>

更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net操作XML技巧总结》、《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。

希望本文所述对大家asp.net程序设计有所帮助。

更多精彩内容其他人还在看

C#中Dictionary几种遍历的实现代码

C#中Dictionary几种遍历的实现代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#实现EXCEL数据到TXT文档的转换

C#实现EXCEL数据到TXT文档的转换,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#数据绑定控件中的DataSource属性浅谈

使用该属性指定用来填充Repeater控件的数据源。DataSource可以是任何System.Collections.IEnumerable对象, 如用于访问数据库的System.Data.DataView、System.Collections.ArrayList、Syste
收藏 0 赞 0 分享

ASP.Net开发常见的一些问题总结

ASP.Net开发常见的一些问题总结,需要的朋友可以参考一下
收藏 0 赞 0 分享

Log4net日志记录组件的使用步骤详解和下载

Log4net日志记录组件的使用步骤详解,需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET主机资源控制的一些心得

您可以通过以下设置控制ASP.NET主机对服务器内存的占用。并能设置ASP.NET主机进程定时重建这样可以避免服务器长时间运行aspnet占用大量空闲内存,有利于提高aspnet运行效率。
收藏 0 赞 0 分享

ADO与ADO.NET的区别与介绍

ADO与ADO.NET简介ADO与ADO.NET既有相似也有区别
收藏 0 赞 0 分享

Asp.Net各种超时问题总结

在数据库或者请求操作时,如果选择的时间段过短或操作数据量过大,就会遇到"请求超时"的的问题,网络上提供很多解决方案,但普遍不完善,根据个人经验及参考网络解决方案,先将其汇总
收藏 0 赞 0 分享

vs.net2008添加模板方法

vs.net2008添加模板方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

Asp.net后台把脚本样式输出到head标签中节省代码冗余

最近在学习开发服务器控件,其它就少不了为控件注册js和css之类的资源文件,或者直接注册纯脚本样式。其中就遇到如下问题     1、 注册的资源文件或纯脚本样式在生成的页面中都不在head标签中(当然这个不影响页面功能)     2、 一个页面使用多个一样的控件时,会
收藏 0 赞 0 分享
查看更多