命名空间:using System.Xml;

程序集:  System.Xml(在 System.Xml.dll 中)。

涉及到的类和方法:

XmlDeclaration 类:表示 XML 声明节点:<?xml version='1.0'...?>,XML文件第一行。

XmlDocument 类:表示 XML 文档。 可使用此类在文档中加载、验证、编辑、添加和放置 XML。

CreateElement 方法 (String, String, String):创建具有指定 Prefix、LocalName 和 NamespaceURI 的元素。

Prefix:新元素的前缀(如果有的话)。

LocalName:新元素的本地名称。

NamespaceURI:新元素的命名空间 URI(如果有的话)。

XmlElement 类:表示元素。

XmlNode 类:表示 XML 文档中的单个节点。

AppendChild方法:将指定的节点添加到该节点的子节点列表的末尾。

SelectSingleNode方法:选择第一个 XmlNode ,与 XPath 表达式匹配。

XML文档示例:

<?xml version="1.0" encoding="gb2312"?>
<Gen>
<Zi name="博客园" age="26">
<title>C#从入门到放弃</title>
<unit>第一讲,如何放弃</unit>
<fm>123.06兆赫</fm>
</Zi>
</Gen>

折叠代码

用C#生成如上XML文件:

//创建XmlDocument对象
XmlDocument xmlDoc = new XmlDocument();
//XML的声明<?xml version="1.0" encoding="gb2312"?>
XmlDeclaration xmlSM = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null);
//追加xmldecl位置
xmlDoc.AppendChild(xmlSM);
//添加一个名为Gen的根节点
XmlElement xml = xmlDoc.CreateElement("", "Gen", "");
//追加Gen的根节点位置
xmlDoc.AppendChild(xml);
//添加另一个节点,与Gen所匹配,查找<Gen>
XmlNode gen = xmlDoc.SelectSingleNode("Gen");
//添加一个名为<Zi>的节点
XmlElement zi = xmlDoc.CreateElement("Zi");
//为<Zi>节点的属性
zi.SetAttribute("name", "博客园");
zi.SetAttribute("age", "");
XmlElement x1 = xmlDoc.CreateElement("title");
//InnerText:获取或设置节点及其所有子节点的串连值
x1.InnerText = "C#从入门到放弃";
zi.AppendChild(x1);//添加到<Zi>节点中
XmlElement x2 = xmlDoc.CreateElement("unit");
x2.InnerText = "第一讲,如何放弃";
zi.AppendChild(x2);
XmlElement x3 = xmlDoc.CreateElement("fm");
x3.InnerText = "123.06兆赫";
zi.AppendChild(x3);
gen.AppendChild(zi);//添加到<Gen>节点中
//保存好创建的XML文档
xmlDoc.Save("D:/data.xml");

折叠代码

C#自动生成XML文件的更多相关文章

  1. Mybatis自动生成xml文件、dao接口、实体类

    Mybatis可以通过逆向工程,实现自动生成xml文件.dao接口.实体类 以下使用的是Intellij Idea进行自动生成 一.首先,要在pom.xml中导入插件,在<build>中加 ...

  2. Mybatis自动生成Xml文件,针对字段类型为text等会默认产生XXXXWithBlobs的方法问题

    默认情况下产生的Mapper.xml里面存在: 需要修改generatorConfiguration.xml,里面的table加属性,如: <table domainObjectName=&qu ...

  3. Mybatis-Generator自动生成XML文件以及接口和实体类

    整合了MySQL和Oracle配置文件生成方法 这个是整个文件夹的下载地址:http://www.codepeople.cn/download 主要给大家介绍一下generatorConfig.xml ...

  4. mybatis 自动生成xml文件配置

    http://blog.csdn.net/techbirds_bao/article/details/9233599/

  5. 让Visual Studio 2013为你自动生成XML反序列化的类

    Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: 1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改.查找.定位情 ...

  6. Wix 安装部署(一)同MSBuild 自动生成打包文件

    因为项目需要,最近在研究Wix打包部署,园子里也有一些关于wix的博客,方方面面,讲的点各不同.我自己也在测试过程中,写下过程,以供参考.最新版本WiX Toolset v3.7,如何安装的就不说了, ...

  7. 自动生成XML反序列化的类

    原文地址:http://www.cnblogs.com/jaxu/p/3632077.html   Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: ...

  8. php中soap的使用实例以及生成WSDL文件,提供自动生成WSDL文件的类库——SoapDiscovery.class.php类

    1. web service普及: Webservice soap wsdl区别之个人见解 Web Service实现业务诉求:  Web Service是真正“办事”的那个,提供一种办事接口的统称. ...

  9. Wix 安装部署(一)同MSBuild 自动生成打包文件 转

    原文地址:http://www.cnblogs.com/stoneniqiu/p/3355086.html 因为项目需要,最近在研究Wix打包部署,园子里也有一些关于wix的博客,方方面面,讲的点各不 ...

随机推荐

  1. 【51nod】1239 欧拉函数之和 杜教筛

    [题意]给定n,求Σφ(i),n<=10^10. [算法]杜教筛 [题解] 定义$s(n)=\sum_{i=1}^{n}\varphi(i)$ 杜教筛$\sum_{i=1}^{n}(\varph ...

  2. android ListView使用

    1.DbOpenHelper package dbOpenHelper; import android.content.Context; import android.database.sqlite. ...

  3. js 获取属性名称

    $(function ()        {            myfun();        })        function myfun()        {            var ...

  4. 第14月第23天 uitextfield文字下移

    1. http://www.jianshu.com/p/641a0cbcabb0

  5. 虚方法virtual、抽象方法abstract、接口interface区别

    接口.抽象类.抽象方法.虚方法: 这四个名词时非常容易混淆的: 首先说一下接口 与抽象类 的异同: 相同点: 1.他们都不能实例化自己,也就是说都是用来被继承的. 2.抽象类中的抽象方法和接口方法一样 ...

  6. Python3 Win下安装 scipy

    没有利用Anaconda安装python库时可能遇到一些问题,例如直接 pip3 install scipy 可能报错,安装失败.原因是Scipy的安装需要依赖MKL库,官方的Numpy不包含MKL, ...

  7. nRFgo Studio 和 Nrfjprog 无法找到JLinkARM.dll的解决方法

    Segger在第一次安装的时候,会在注册表中添加安装路径的字段,nRF的两个软件就根据这两个注册表字段来寻找JLinkARM.dll.而当你卸载/更新Segger的时候,注册表的相关的字段是不会被修改 ...

  8. saltstack自动化运维系列⑤之saltstack的配置管理详解

    saltstack自动化运维系列⑤之saltstack的配置管理详解 配置管理初始化: a.服务端配置vim /etc/salt/master file_roots: base: - /srv/sal ...

  9. zabbix3.0.4使用shell脚本和zabbix自带模板两种方法添加对指定进程和端口的监控

    zabbix3.0.4添加对进程的监控: 方法一:通过自定义命令进行监控 主要思路: 通过 ps -ef|grep sdk-push-1.0.0.jar |grep -v grep|wc -l 这个命 ...

  10. 创建物理卷报错Can't open /dev/sdb5 exclusively. Mounted filesystem的问题解决过程记录

    yum服务器lvm扩容,data目录是yum存放rpm包的目录,只有20G,需要添加磁盘扩容到80G # df -lh Filesystem                 Size  Used Av ...