命名空间: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. android AsyncHttpClient使用

    1.www.github.com下载jar包 loopj/android-async-http 将下载好的文件导入项目中 2.main.xml <?xml version="1.0&q ...

  2. 树形控件QTreeWidget

    import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QApplication, QWidget, QTreeWidge ...

  3. idea的起步配置

    工欲善其事,必先利其器 1.安装 https://www.jetbrains.com/idea/download/#section=windows 可以选择不同平台的安装包,版本一般Ultimate, ...

  4. python安装模块方法汇总

    方法一: 原文地址: http://blog.csdn.net/cighao/article/details/47860041 在 windows 系统下,只需要输入命令 pip install re ...

  5. python - class类 (七) 三大特性 - 封装 结尾

    封装: # 封装 #第一层,类就是麻袋,本身就是一种封装 #第二层,类中定义私有的,至在类的内部使用,外部无法访问 #第三层,封装在于明确区分内外,使得类实现者可以修改封装内的东西二不影响外部调用者 ...

  6. JQuery中的$.getScript()、$.getJson()和$.ajax()方法

    $.getScript() 有时候,在页面初次加载时就取得所需的全部JavaScript文件是完全没有必要的.虽然可以在需要哪个JavaScript文件时,动态地创建<script>标签, ...

  7. Servlet3.0的注解自定义原生Servlet实战

    Servlet3.0的注解自定义原生Servlet实战 讲解:使用 Servlet3.0的注解自定义原生Servlet和Listener 自定义原生Servlet package net.xdclas ...

  8. Windows系统FTP Shell

    ftp open 10.0.0.0.2 21101 user passwd ls cd pwd delete get /home/err.log Error.log put err.log /home ...

  9. Lucas卢卡斯定理

    当$p$为素数时 $$C_n^m\equiv C_{n/p}^{m/p}*C_{n\%p}^{m\%p}(mod\ p)$$ 设$n=s*p+q,m\equiv t*p+r(q,r<=p)$ 我 ...

  10. 025_set专题

    一.sed过滤maven的setting文件的XML注释 sed 's/<!--.*-->//g' /usr/local/apache-maven-3.5.0/conf/settings. ...