C# 操作xml(转)

news/2024/9/19 7:39:55/文章来源:https://www.cnblogs.com/lrzy/p/18412181

四、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、匿名函数

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

例子二、

 

 转自知乎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/796566.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录突击版刷题

704.二分查找 https://leetcode.cn/problems/binary-search/description/ 59.螺旋矩阵IIhttps://leetcode.cn/problems/spiral-matrix-ii/description/、 参考题解写出54.螺旋矩阵https://leetcode.cn/problems/spiral-matrix/description/class Solution { public:vector<i…

高精地图(HD map)的简单介绍

高精度语义地图的动态构建-HDMapNet - 知乎 (zhihu.com)

fastDFS - 单机部署 + nginx

准备查看操作系统的版本信息[root@lab10 ~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)查看操作系统的网卡地址[root@lab10 ~]# ip address show ens32 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group def…

python 获取163 邮箱的邮件信息

此案例是是获取的一个亚马逊的验证码 import time from imaplib import IMAP4_SSL import imaplib,email,datetime from lxml import etree from dateutil.parser import parsedef str_to_unicode(s, encoding=None):return str(s, encoding) if encoding else str(s)def get_x…

支付宝携手HarmonyOS SDK打造高效便捷的扫码支付体验

背景 在日常的购物转账、生活缴费等在线支付中,用户在正式拉起支付界面前,均需要至少经历一次"识别"+两次"寻找",即识别归属应用、寻找应用、寻找扫码入口,才能完成扫码、付款,每一步都带来不同程度的用户流失。如何将步骤繁琐的扫码支付做到最简化,…

基于Java+Springboot+Vue开发的鲜花商城管理系统

项目简介该项目是基于Java+Springboot+Vue开发的鲜花商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的鲜花商城管理系统项目,大学生可以在实践中学…

基于Java+Springboot+Vue开发的体育用品商城管理系统

项目简介该项目是基于Java+Springboot+Vue开发的体育用品商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的体育用品商城管理系统项目,大学生可以在…

基于Java+Springboot+Vue开发的口腔牙科诊所预约管理系统

项目简介该项目是基于Java+Springboot+Vue开发的口腔牙科诊所预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的口腔预约管理系统项目,大学生可以在…

南沙C++信奥老师解一本通题: 1212:LETTERS

​题目描述】给出一个rowcol的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。【输入】第一行,输入字母矩阵行数R和列数S,1≤R,S≤20。 接着输出R行S列字母矩阵。【输出】最多能走过的不同字母的个…