C# 操作xml(转)
四、xml
1、概念:XML可扩展的标记语言类似于HTML
XML:存储数据
注意:
XM工是严格区分大小写的。
XML标签也是成对出现的。
2、通过代码来创建xML文档
1、引用命名空间
using System.Xml;
2、创建XML文档对象
XmlDocument doc = new XmlDocument();
3、创建第一行描述信息,并且添加到doc文档中
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "utf-8",null);
doc.AppendChild(dec);
4、创建一个根节点,并且添加到doc文档中---必须有
XmlElement books = doc.CreateElement("Books");
doc.AppendChild(books);
5、给根节点创建一个子节点
XmlElement book1 = doc.CreateElement("Book");
6、将book添加到根节点
books.AppendChild(book1);
7、为book1创建新的节点

8、保存文档

3、添加标签与添加属性
1、添加标签
1、是上文,创建一个标签然后加入节点中
2、通过innerxml:添加

所以添加文本用InnerText
添加标签用innerxml
2、添加属性:在节点orderItem中添加Name = “ 奥特曼”和…

4、元素和节点
元素(CreateElement):XML文档中的所有内容都是元素
节点:XML文档中的每一个标签都是节点
节点包含元素
并且注意:XML文档有且只能有一个根节点(必须有)
五、追加,读取,删除xml文档
1、追加xml文档
1、首先
1、引用命名空间
using System.Xml;
2、创建XML文档对象
XmlDocument doc = new XmlDocument();
2、判断文档受否存在
1、如果存在
首先加载目标xml文档
doc.Load("Books.xml")
然后获得文件的根节点
XmlElement books = doc.DocumentElement;
2、如果不存在
创建一个新的文档创建一个新的根节点
创建第一行
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0","utf-8",null);
doc.AppendChild(dec);
创建根节点
XmlElement books = doc.CreateElement("Books");
doc.AppendChild(books);
3、下面追加的内容同上

2、读取xml文档
1、首先
1、引用命名空间
using System.Xml;
2、创建XML文档对象
XmlDocument doc = new XmlDocument();
2、加载目标xml文档
doc.Load("Books.xml")
3、获得根节点
XmlElement books = doc.DocumentElement;
4、获得子节点 返回节点的集合
XmlNodeList xnl = doc.ChildNodes;

3、读取带属性的文档
1、首先
1、引用命名空间
using System.Xml;
2、创建XML文档对象
XmlDocument doc = new XmlDocument();
2、加载目标xml文档
doc.Load("Books.xml")
3、读取特定的节点列表(不一定只有一个)
XmlNodeList xnl = doc.SelectNodes("/Order/Items/OrderItem");

六、委托
1、什么是委托
1、为什么要使用委托
将一个方法作为参数传递给另一个方法,而方法的类型就是委托。
2、委托概念和语法
委托就是指向一个函数的变量

首先注意:声明一个委托类型->委托所指向的函数必须跟委托具有相同的签名(参数和返回值)。
1、命名空间下声明一个委托

2、Main函数中可以声明一个自己创建的委托

2、也可以在声明一个方法,然后用这个方法在通过委托调用其他的方法

2、委托的好处。
比如,有一个字符串数组,这个数组由用户决定它是大写还是小写

3、匿名函数
当方法仅仅使用一次时,可以考虑使用匿名函数,可以节省空间

例子二、

转自知乎
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
2021-09-13 SAP 销售订单到交货单后的数据变化(VBAP)