C#知识点:操作XML
XML是什么就不用说了文本标记语言。
主要纪录如何对XML文件进行增删改查。
Xml的操作类都存在System.xml命名空间下面。
应用型的直接上代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml; namespace XMLTest
{
class Program
{
static void Main(string[] args)
{
//1.创建XML文档对象
XmlDocument doc = new XmlDocument(); //创建头
XmlDeclaration xmlDeclaration = doc.CreateXmlDeclaration("1.0", "UTF-8", null); //添加节点
doc.AppendChild(xmlDeclaration);
XmlElement xmlElement = doc.CreateElement("Persons"); //给节点添加属性
xmlElement.SetAttribute("Name", "一小时小超人");
doc.AppendChild(xmlElement); XmlElement xmlElement1 = doc.CreateElement("Person");
//给节点添加文字
xmlElement1.InnerXml = "小超人";
xmlElement.AppendChild(xmlElement1);
doc.Save("Test.xml"); }
}
}

<?xml version="1.0" encoding="UTF-8"?>
<Persons Name="一小时小超人">
<Person>小超人</Person>
</Persons>
这个地方主要讲一下 XmlElement.InnerXml和XmlElement.InnerText的区别。代码演示

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml; namespace XMLTest
{
class Program
{
static void Main(string[] args)
{
//1.创建XML文档对象
XmlDocument doc = new XmlDocument(); //创建头
XmlDeclaration xmlDeclaration = doc.CreateXmlDeclaration("1.0", "UTF-8", null); //添加节点
doc.AppendChild(xmlDeclaration);
XmlElement xmlElement = doc.CreateElement("Persons"); //给节点添加属性
xmlElement.SetAttribute("Name", "一小时小超人"); doc.AppendChild(xmlElement); XmlElement xmlElement1 = doc.CreateElement("Person");
//给节点添加文字
xmlElement1.InnerXml = "<演示>小超人</演示>";
xmlElement.AppendChild(xmlElement1);
XmlElement xmlElement2 = doc.CreateElement("Person");
//给节点添加文字
xmlElement2.InnerText = "<演示>小超人</演示>";
//给节点添加属性
xmlElement2.SetAttribute("name", "一小时小超人");
xmlElement.AppendChild(xmlElement2);
doc.Save("Test.xml");
}
}
}



<?xml version="1.0" encoding="UTF-8"?>
<Persons Name="一小时小超人">
<Person>
<演示>小超人</演示>
</Person>
<Person name="一小时小超人"><演示>小超人</演示></Person>
</Persons>


很明显的看出来如果字符串是个标签,Interxml会当成标签给你添加,innterText会转义。
下面演示一下读取操作

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml; namespace XMLTest
{
class Program
{
static void Main(string[] args)
{
//1.创建XML文档对象
XmlDocument doc = new XmlDocument();
if (File.Exists("Test.xml"))
{
//通过文件名加载Xml,也可以通过流之类的,其他重载方法,看文档。
doc.Load("Test.xml"); //获取根节点
XmlElement xmlElement = doc.DocumentElement; //获取根节点下面的子节点集合
XmlNodeList nodeList = xmlElement.ChildNodes;
//循环取每一个子节点
foreach (XmlNode item in nodeList)
{ Console.WriteLine(item.Name); //获取节点属性
//string attributesValue=item.Attributes["属性名称"].Value;
}
Console.ReadKey();
} }
}
}
C#知识点:操作XML的更多相关文章
- 10.C#知识点:操作XML
知识点目录==========>传送门 XML是什么就不用说了文本标记语言. 主要纪录如何对XML文件进行增删改查. Xml的操作类都存在System.xml命名空间下面. 应用型的直接上代码 ...
- SqlServer知识点-操作xml
一.开发环境 SQL2010 二.开发过程 1.声明一个xml类型变量 DECLARE @xmlInfo XML; SET @xmlInfo = '<CompanyGroup> <C ...
- VBA中操作XML
OFFICE2007之后使用了OpenXml标准(伟大的改变),定制文本级的Ribbon可以通过修改压缩包内的xml文件来实现. 先学习一下VBA中操作XML的方法 先引用Microsoft XML ...
- Asp.Net 操作XML文件的增删改查 利用GridView
不废话,直接上如何利用Asp.NET操作XML文件,并对其属性进行修改,刚开始的时候,是打算使用JS来控制生成XML文件的,但是最后却是无法创建文件,读取文件则没有使用了 index.aspx 文件 ...
- php中通过DOM操作XML
DOM文档在js里早就接触过,知道DOM不但可以操作html文档,还可以操作XHTML,XML等文档,有着极强的通用性,下面我们通过两个小例子,看看在PHP中是如何用DOM操作XML文档的,和js中差 ...
- 使用dom4j操作XML
DOM4J介绍 DOM4J是使用Java语言编写的,用于读写及操作XML的一套组件,DOM4J同时具有DOM修改文件的优点和SAX读取快速的优点. DOM4J的使用 首先下载dom4j的JAR包,我用 ...
- 使用JDOM操作XML
JDOM介绍 JDOM是使用Java语言编写的,用于读写及操作XML的一套组件,Jdom同时具有DOM修改文件的优点和SAX读取快速的优点. JDOM的使用 首先下载JDOM的JAR包,本文使用的是j ...
- php : DOM 操作 XML
DOM 操作 XML 基本用法 XML文件: person.XML <?xml version="1.0" encoding="utf-8" ?> ...
- Strus2第一次课:dom4j操作xml
先从底层的xml操作技术记录: 当我们新建一个项目,什么架包都没加入的时候,java提供了 org.w3c.dom给我们操作xml里面的元素 import org.w3c.dom.Document; ...
随机推荐
- SpringMvc接收multipart/form-data 传输的数据 及 PostMan各类数据类型的区别
前段时间遇到一个问题,在spring mvc 服务端接收post请求时,通过html 表单提交的时候,服务端能够接收到参数的值.但是使用httpclient4.3构造post请求,却无法接收到参数的值 ...
- CentOS7 安装 Nexus
CentOS7 安装 Nexus 所需软件包 jdk-8u231-linux-x64.tar.gz nexus-3.24.0-02-unix.tar.gz 创建安装目录 mkdir -p /opt/n ...
- XCTF-WEB-高手进阶区(1-4)笔记
1:baby_web 题目描述:想想初始页面是哪个 通过Dirsearch软件扫描发现Index.php被藏起来了,访问他便会指向1.php 于是通过Burp修改Get为index.php,然后放入R ...
- C#LeetCode刷题之#633-平方数之和( Sum of Square Numbers)
问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3885 访问. 给定一个非负整数 c ,你要判断是否存在两个整数 ...
- 检查型异常和非检查型异常——Java
文章目录 检查型异常和非检查型异常--Java 检查型异常 非检查型异常 结语 检查型异常和非检查型异常--Java Java语言规范将派生于Error类或RuntimeExceprion类的所有异常 ...
- HBase存储及读写原理介绍
一.HBase介绍及其特点 HBase是一个开源的非关系型分布式数据库,它参考了谷歌的BigTable建模,实现的编程语言为Java.它是Apache软件基金会的Hadoop项目的一部分,运行于HDF ...
- JS实例—DOM的增删改
<!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8" ...
- 题解 SGU294 He's Circles
题目描述 失踪人口回归 根据\(Polya\)定理$$ans=\frac 1n \sum\limits_{i=1}^n2^{gcd(i, n)}$$ 考虑枚举\(gcd\),原式变成$$\frac 1 ...
- 题解 UVA10457
题目大意:另s = 路径上的最大边权减最小边权,求u到v上的一条路径,使其s最小,输出这个s. 很容易想到枚举最小边然后跑最小瓶颈路. so,如何跑最小瓶颈路? 利用Kruskal,因为树上两点路径唯 ...
- Linux文件权限-笔记
文件权限共10个字符,第一个字符表示该文件是[文件夹]或[文件]——如果是字符“d"则表示该文件是文件夹:如果是字符“-”则表示是文件. 后九个字符,三个一组,共三组,分别表示[所有者权限] ...