C#语言-06.XML
a. XML:称为可扩展标记性语言,它主要用于描述数据
i. 特点:
. XML 中用于描述数据的各个节点可以自由扩展
. XML 文件中的节点区分大小写
. XML 中的每对标记通常被称为节点,它们是成对出现而且是必须成对出现的
. XML 数据可以跨平台使用并可以被人阅读理解
. XML 数据的内容和结构有明确的定义
. XML 数据之间的关系得以强化
. XML 数据的内容和数据的表现形式分离
. XML 使用的结构是开放的,可扩展的
ii. 语法:
. XML 的声明:声明必须要放在文档的第一行
a. 声明语法:<?xml version="1.0" encoding="GB2312">
b. Version 表示 XML 文档的版本号
c. encoding="GB2312" 代表文档使用的字符集为简体中文,BIG5代表为繁体中文
. 处理指令 PI:为处理 XML 的应用程序提供信息
a. 格式为:<? 处理指令名 处理指令信息?>
. XML 元素:是组成 XML 文档的核心
a. <标识>内容<标识>
iii. 操作 XML 数据:
. DOM:是一个程序接口,应用程序和脚本可以通过这个接口访问和修改 XML 文档数据
a. 基础类:包括了用来编写操作 XML 文档的应用程序所需要的类
i. XMLNode 类用来表示文档树中的单个节点
. 属性:
a. InnerText 属性:当前节点的值
b. Name 属性:当前节点的名字
c. ChildNodes 属性:当前节点的所有子节点
ii. XMLNodeList 类用来表示一个节点的有序集合
iii. XMLNamedNodeMap 类用来表示一个节点的集合
b. 扩展类:用来简化程序员的开发工作类
i. XMLDocument 类表示 XML 文档
. 属性:
a. DocumentElement 属性:获取根节点
b. ChildNodes 属性:获取所有的子节点
. 方法:
a. Load():读取整个 XML 的结构
. 创建 XML 文档
a. 创建不带参数的 XmlDocument :XmlDocument doc=new XmlDocument();
b. 创建一个 XmlDocument 并将 XmlNameTable 作为参数传递给它:XmlDocument doc=new XmlDocument(XmlNameTable);
i. XmlNameTable 类是原子化字符串对象的表,该表为 XML 分析器提供了一种高效的方法,即对 XML 文档中所有重复的元素和属性名使用相同的字符串对象
. 保存 XML 文档:使用 XmlDocument 类的 Save() 方法来操作
. 将XML 读入文档:使用 XmlDocument 类的 Load() 方法来操作
. 选择节点
a. 两种方法:
i. SelectSingleNode:返回符合选择条件的第一个节点
ii. SelectNodes:返回包含匹配节点的 XmlNodeList
. 创建新节点:使用 XmlDocument 类的 Create() 方法来操作
. 修改 XML 文档
a. 常用方法如下:
i. 使用 XmlNode.Value 方法更改节点值
ii. 通过用新节点替换节点来修改全部节点集,这可使用 XmlNode.InnerXml 属性来完成
iii. 通过 XmlNode.ReplaceChild 方法用新节点替换现有节点
iv. 使用 XmlCharacterData.AppendData 方法、XmlCharacterData.InsertData 方法或 XmlCharacterData.ReplaceData 方法将附加字符添加到从 XmlCharacter 类继承的节点
v. 对从 XmlCharacterData 继承的节点类型使用 DeleteData 方法移除某个范围的字符来修改内容
vi. 使用 SetAttribute 方法更新属性值,如果不存在属性,SetAttribute 创建一个新属性;如果存在属性,则更新属性值
. 删除 XML 文档的节点、属性和内容
a. 删除节点:使用 RemoveChild 方法移除特定节点,如果要删除多个节点,使用 RemoveAll 方法移除当前节点的所有子级和属性
b. 删除属性集合中的属性:使用 XmlAttibuteCollection.Remove 方法移除特定属性,XmlAttibuteCollection.RemoveAll 方法移除集合中的所有属性
c. 删除节点的属性:可以使用 XmlDocument。RemoveAllAttributes 移除属性集合
d. 删除节点内容:可以使用 DeleteData 方法移除字符
C#语言-06.XML的更多相关文章
- SQL Server 2005的XML数据修改语言(XML DML)
转:http://www.microsoft.com/china/msdn/library/data/sqlserver/XMLDML.mspx?mfr=true 作为对XQuery语言的扩展,XML ...
- C语言:XML学习
说明:文章中代码是我参考别人的例子得来的. XML基础 一.XML的概念 Xml是一种可扩展标记语言.在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如 ...
- 使用go语言解析xml
操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 现有一个自动报障程序,如果服务出错会自动给指定人发送邮件,配置文件内容如下(default.xml): <?xml ...
- ABP实战--修改语言配置XML至Json
从ABP官网下载的Zero的多语言配置默认是使用XML文件的,实际使用中XML是没有Json简洁明了的,所以我们将其修改为Json格式. 修改MyLocalizationConfigurer.cs文件 ...
- c#学习笔记06——XML
XML概述:eXtensible Markup Language,可扩展标记语言.网络应用开发的一项新技术.同HTML一样是一种标记语言,但是数据描述能力要强很多.XML具有描述所有已知未知数据的能力 ...
- C语言处理xml文件的库
读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好. TinyXML是一个开源的解 ...
- C语言-06复杂数据类型-04 结构体
结构体的说明(构造类型) 数组:只能由多个相同类型的数据构成 结构体:可以由多个不同类型的数据构成 ,结构体的类型是不存在的,自己定义 int main() { // 1.定义结构体类型 定义类型的时 ...
- 工作日志2014-06-10(实现C语言解析XML获得查询关键字)
#include "GetInfo.h" ]; int GetInfoToWrite(char* path, char* domain,Write_t* pwrite); int ...
- .net中使用XPath语言在xml中判断是否存在节点值的方法
book.xml<?xml version="1.0" encoding="utf-8" ?> <bookstore> <boo ...
随机推荐
- Django FileFieldManage
default_storage >>> from django.core.files.base import ContentFile >>> from django ...
- android相对布局中控件的常用属性
Android布局属性详解 RelativeLayout用到的一些重要的属性: 第一类:属性值为true或false android:layout_centerHorizontal 水平居中 andr ...
- DatagridView 控件列顺序与设置的不一样
解决方案如下 : 1. dataGridView1.AutoGenerateColumns = false; 2. 绑定的dataSource 中所有的列都要写进去(列一定是绑定的模型中属性) 先在界 ...
- “全栈2019”Java第八十章:外部类是否能实现本类中的接口?
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- [Swift实际操作]八、实用进阶-(5)通过间接代理进行对象间的消息传递
本文将为你演示,如何通过简介代理的方式,进行对象间的消息传递在左侧的项目导航区,打开自定义视图的代码文件(CustomView.swift). import UIKit class CustomVie ...
- CentOS 安装系统侦察工具
Nessus setup: rpm -ivh http://downloads.nessus.org/nessus3dl.php\?file\=Nessus-6.10.2-es6.x86_64.rpm ...
- Binaries和Source、tgz和zip的区别
在下载页面会有2种下载分类,一个是Binaries,一个是source,一般开放原代码软件都会有两个版本发布: Source Distribution 和 Binary Distribution ,二 ...
- 2016级算法第一次练习赛-E.AlvinZH的儿时回忆——蛙声一片
864 AlvinZH的儿时回忆----蛙声一片 题目链接:https://buaacoding.cn/problem/865/index 思路 中等题.难点在于理解题意!仔细读题才能弄懂题目规则.整 ...
- CocoaPods的PodSpec.json文件用法
最近有时候用最新的CocoaPod的第三方库,有时候发现CocoaPod.org能搜到那个Podfile,但是每次在终端Pod search xxx,每次都搜不到,原来是本地的Podspec没用更新, ...
- nginx windows 安装为服务.
安装Nginx 下载windows版nginx (http://nginx.org/download/nginx-1.10.0.zip),之后解压到需要放置的位置(D:\xampp\nginx) 将N ...