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的更多相关文章

  1. SQL Server 2005的XML数据修改语言(XML DML)

    转:http://www.microsoft.com/china/msdn/library/data/sqlserver/XMLDML.mspx?mfr=true 作为对XQuery语言的扩展,XML ...

  2. C语言:XML学习

    说明:文章中代码是我参考别人的例子得来的. XML基础 一.XML的概念 Xml是一种可扩展标记语言.在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如 ...

  3. 使用go语言解析xml

    操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 现有一个自动报障程序,如果服务出错会自动给指定人发送邮件,配置文件内容如下(default.xml): <?xml ...

  4. ABP实战--修改语言配置XML至Json

    从ABP官网下载的Zero的多语言配置默认是使用XML文件的,实际使用中XML是没有Json简洁明了的,所以我们将其修改为Json格式. 修改MyLocalizationConfigurer.cs文件 ...

  5. c#学习笔记06——XML

    XML概述:eXtensible Markup Language,可扩展标记语言.网络应用开发的一项新技术.同HTML一样是一种标记语言,但是数据描述能力要强很多.XML具有描述所有已知未知数据的能力 ...

  6. C语言处理xml文件的库

    读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好. TinyXML是一个开源的解 ...

  7. C语言-06复杂数据类型-04 结构体

    结构体的说明(构造类型) 数组:只能由多个相同类型的数据构成 结构体:可以由多个不同类型的数据构成 ,结构体的类型是不存在的,自己定义 int main() { // 1.定义结构体类型 定义类型的时 ...

  8. 工作日志2014-06-10(实现C语言解析XML获得查询关键字)

    #include "GetInfo.h" ]; int GetInfoToWrite(char* path, char* domain,Write_t* pwrite); int ...

  9. .net中使用XPath语言在xml中判断是否存在节点值的方法

    book.xml<?xml version="1.0" encoding="utf-8" ?> <bookstore>  <boo ...

随机推荐

  1. 「ONTAK2010」 Peaks加强版

    题目链接 戳我 \(Solution\) 首先来介绍一下kruskal重构树:详见 知道kruskal重构树后这一道题就可以几乎没了. 利用kruskal重构树的性质,一个节点的左右儿子都比他小(其实 ...

  2. Robot Framework连接MySQL数据库

    注:内容来自网络,整理之如下 Robot Framework连接mysql数据库需要: 1.安装databaselibrary.pymysql 通过cmd命令执行:pip install robotf ...

  3. 使用ActiveMQ实现简易聊天功能

    一 什么是消息队列 我们可以把消息队列比作是一个存放消息的容器,当我们需要使用消息的时候可以取出消息供自己使用.消息队列是分布式系统中重要的组件,使用消息队列主要是为了通过异步处理提高系统性能和削峰. ...

  4. scroll滚动到一定距离触发事件/返回顶部animate

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. [Flex] 组件Tree系列 —— 阻止用户点击选中Tree中任何节点

    mxml: <?xml version="1.0" encoding="utf-8"?> <!--功能描述:阻止用户点击选中Tree中任何节点 ...

  6. [Objective-C语言教程]函数(11)

    函数是一组一起执行任务的语句. 每个Objective-C程序都有一个C函数,也就是main()函数,所有最简单的程序都可以定义为函数. 可将代码划分为单独的函数.如何在不同的函数之间划分代码取决于程 ...

  7. CF765F Souvenirs 离线+线段树+主席树

    $ \color{#0066ff}{ 题目描述 }$ A县旁,连绵着一条长度为 n 的山脉,这条山脉由 n 座山峰组成,第 i 座山 峰的高度为 ai.作为著名的旅游县城,每天来到山脉游玩的旅客络绎不 ...

  8. python 入门级教你如何拿到小姐姐微信

      第一题: 首先错误的思路,首先找出  707829217/2+1 里面的所有奇数,然后再利用两个for,来判断 import math def func_get_prime(n): return ...

  9. 高阶篇:4.2.3)DFMEA现有设计:预防控制与探测控制

    本章目的:在现有设计中,明确预防控制与探测控制的定义和手段. 1.现有控制的填写部位: 2.现行设计控制(h)定义: 作为设计过程的一部分,现行设计控制是已经实施或承诺的活动,它将确保设计充分考虑设计 ...

  10. shell (3) 磁盘挂载

    #!/bin/sh disk=`df -h |grep /dev/sd|awk '{print $1}'` echo $disk for d in $disk do echo $d uuid=`blk ...