[转].net创建XML文件的两种方法
原文发布时间为:2009-08-26 —— 来源于本人的百度文章 [由搬家工具导入]
方法一:按照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>
[转].net创建XML文件的两种方法的更多相关文章
- .net中创建xml文件的两种方法
.net中创建xml文件的两种方法 方法1:根据xml结构一步一步构建xml文档,保存文件(动态方式) 方法2:直接加载xml结构,保存文件(固定方式) 方法1:动态创建xml文档 根据传递的值,构建 ...
- [转载]C#读写txt文件的两种方法介绍
C#读写txt文件的两种方法介绍 by 大龙哥 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char ...
- MySQL命令执行sql文件的两种方法
MySQL命令执行sql文件的两种方法 摘要:和其他数据库一样,MySQL也提供了命令执行sql脚本文件,方便地进行数据库.表以及数据等各种操作.下面笔者讲解MySQL执行sql文件命令的两种方法,希 ...
- C#读写txt文件的两种方法介绍
C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...
- 合并BIN文件的两种方法(转)
源:http://blog.chinaunix.net/uid-20745340-id-1878803.html 合并BIN文件的两种方法 在单片机的开发过程中,经常需要将两个单独的BIN文件合并成一 ...
- C#读写txt文件的两种方法介绍[转]
C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...
- C#读写txt文件的两种方法介绍 v
C#读写txt文件的两种方法介绍 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出 ...
- spring 配置文件 引入外部的property文件的两种方法
spring 的配置文件 引入外部的property文件的两种方法 <!-- 引入jdbc配置文件 方法一 --> <bean id="propertyConfig ...
- Linux下查看alert日志文件的两种方法
--linux下查看alert日志文件的两种方法: --方法1: SQL> show parameter background_dump_dest; NAME TYPE VALUE ------ ...
随机推荐
- goaccess实现实时监控
一.实现后台实时监控 goaccess -p /usr/local/etc/goaccess/goaccess.conf /var/log/nginx/access.log -a -o /usr/sh ...
- Linux时区修改
Linux修改时区的正确方法 CentOS和Ubuntu的时区文件是/etc/localtime,但是在CentOS7以后localtime以及变成了一个链接文件 [root@centos7 ~]# ...
- 排列算法汇总(下一个排列,全排列,第K个排列)
一.下一个排列 首先,STL提供了两个用来计算排列组合关系的算法,分别是next_permutation和prev_permutation. next_permutation(nums.begin() ...
- 并查集:HDU5326-Work(并查集比较简单灵活的运用)
Work HDU原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=5326 Time Limit: 2000/1000 MS (Java/Others) M ...
- (转) Redis哨兵的详解
1 哨兵的作用 哨兵是redis集群架构中非常重要的一个组件,主要功能如下: 1. 集群监控:负责监控redis master和slave进程是否正常工作 2. 消息通知:如果某个redis实例有故障 ...
- 校内考试之zay与银临(day1)
T1大美江湖(洛谷P5006) zayの题解: 这个题的本质是模拟 不过有卡ceil的地方 ceil是对一个double进行向上取整,而对于int/int来说,返回值是int 举个生动的栗子 ceil ...
- HDU 3032 Nim or not Nim?(Multi_SG,打表找规律)
Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- P1880 石子合并
P1880 石子合并 题目描述 在一个园形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法,计 ...
- getsupportfragmentmanager 没有这个方法
让activity继承自fragmentactivity就行了.
- leetcode 【 Unique Paths 】python 实现
题目: A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). ...