XML 简介
什么是 xml?
xml 是可扩展的标记性语言。
xml 的作用?
xml 的主要作用有:
1、用来保存数据,而且这些数据具有自我描述性
2、它还可以做为项目或者模块的配置文件
3、还可以做为网络传输数据的格式(现在 JSON 为主)。
xml 语法
- 文档声明。
- 元素(标签)
- xml 属性
- xml 注释
- 文本区域(CDATA 区)
文档声明
我们先创建一个简单 XML 文件,用来描述图书信息
(1)创建一个 xml 文件
而且这个<?xml 要连在一起写,否则会有报错
属性
| version | 是版本号 |
| encoding | 是 xml 的文件编码 |
| standalone="yes/no" | 表示这个 xml 文件是否是独立的 xml 文件 |
(2)图书有 id 性 属性 一 表示唯一 标识,书名,有作者,价格的信息
books.xml文件内容:
xml 注释
html 和 XML 注释 一样 :
元素(标签)
html 标签:
| 格式 | <标签名>封装的数据</标签名> |
| 单标签 | <标签名 /> <br /> 换行 <hr />水平线 |
| 双标签 | <标签名>封装的数据</标签名> |
1. 标签名大小写不敏感
2. 标签有属性,有基本属性和事件属性
3. 标签要闭合(不闭合 ,html 中不报错。但我们要养成良好的书写习惯。闭合)
1)什么是 xml 元素
元素是指从开始标签到结束标签的内容。
例如:
元素 我们可以简单的理解为是 标签。
Element 翻译 元素
2)XML 命名规则
XML 元素必须遵循以下命名规则:
- 名称可以含字母、数字以及其他的字符
例如:
- 名称不能以数字或者标点符号开始
- 尽管以“xml”(或者 XML、Xml)是可以的、不报错的,但是不建议名称以字符 “xml”(或者 XML、Xml)开始
- 名称不能包含空格
3)xml 也 中的元素(标签)也 成 分成 单标签和双标签:
单标签
格式:
双标签
格式:
xml 属性
xml 的标签属性和 html 的标签属性是非常类似的, 属性可以提供元素的额外信息
在标签上可以书写属性:
一个标签上可以书写多个属性。每个属性的值必须使用 引号 引起来。
的规则和标签的书写规则一致。
语法规则
- 所有 XML 元素都须有关闭标签


7. 文本区域(CDATA 区)
CDATA 语法可以告诉 xml 解析器,我 CDATA 里的文本内容,只是纯文本,不需要 xml 语法解析
CDATA 格式:
示例:
xml 解析技术介绍
xml 可扩展的标记语言。
不管是 html 文件还是 xml 文件它们都是标记型文档,都可以使用 w3c 组织制定的 dom 技术来解析。
document 对象表示的是整个文档(可以是 html 文档,也可以是 xml 文档)
早期 JDK 为我们提供了两种 xml 解析技术 DOM 和 和 Sax 简介( 已经过时,但需要知道这两种技术 )
dom 解析技术是 W3C 组织制定的,而所有的编程语言都对这个解析技术使用了自己语言的特点进行实现。
Java 对 dom 技术解析标记也做了实现。
sun 公司在 JDK5 版本对 dom 解析技术进行升级:SAX( Simple API for XML )
SAX 解析,它跟 W3C 制定的解析不太一样。它是以类似事件机制通过回调告诉用户当前正在解析的内容。
它是一行一行的读取 xml 文件进行解析的。不会创建大量的 dom 对象。
所以它在解析 xml 的时候,在内存的使用上。和性能上。都优于 Dom 解析。
第三方的解析:
jdom 在 dom 基础上进行了封装 、dom4j 又对 jdom 进行了封装。
pull 主要用在 Android 手机开发,是在跟 sax 非常类似都是事件机制解析 xml 文件。
这个 Dom4j 它是第三方的解析技术。我们需要使用第三方给我们提供好的类库才可以解析 xml 文件。
dom4j 解析技术
Dom4j 类库的使用
Dom4j包下载:https://kohler.lanzouv.com/iv8R207qmvkh
解压后:

dom4j 目录的介绍
- docs 是文档目录
- 查 如何查 Dom4j 的文档
- Dom4j 快速入门
- lib 目录
dom4j 编程步骤
第一步: 先加载 xml 文件创建 Document 对象
第二步:通过 Document 对象拿到根元素对象
第三步:通过根元素.elelemts(标签名); 可以返回一个集合,这个集合里放着。所有你指定的标签名的元素对象
第四步:找到你想要修改、删除的子元素,进行相应在的操作
第五步,保存到硬盘上
获取 document 对象
创建一个 lib 目录,并添加 dom4j 的 jar 包。并添加到类路径。

需要解析的 books.xml 文件内容:
解析获取 Document 对象的代码
第一步,先创建 SaxReader 对象。这个对象,用于读取 xml 文件,并创建
Document
遍历 、遍历 签 标签 获取所有标签中的内容
如图片失效等情况请参阅公众号文章:https://mp.weixin.qq.com/s/T4tsUg4_YRiDRPEF7fhOtQ
欢迎关注公众号:“愚生浅末”,一起学习交流。
__EOF__

本文链接:https://www.cnblogs.com/kohler21/p/16474116.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!






















