一,XML
1,概述:
Extensible Markup Language 可拓展标记语言。拓展:标签都可以自定义。
2,功能:
存储数据。应用在,配置文件,在网络中传输。
3,XML 和 HTML 区别:
1,XML标签是自定义 HTML标签是预定义好的
2,XML语法严格 HTML语法松散
3,XML是存储数据的 HTML是展示数据的
二,语法
1,基本语法:
1》文件名后缀 .xml
2》XML第一行必须是文档声明
3》有且只有一个根标签
4》属性值必须用引号引起来
5》标签必须正确闭合
6》XML严格区分大小写
2,组成部分
1》文档声明
格式:<?xml 属性列表?>
属性列表: version 版本号
encoding 编码格式 默认ISO-8859-1
standalone 是否依赖其他文件 yes 依赖 no 不依赖
2》指令
<?xml-stylesheet type="text/css href=""kgc.css"?>
3》标签
名字可以包含字母,数字,但数字不能开头名称不能以xml开始,名字中不能包含空格
4》属性id
表示唯一
5》文本
CDATA
3,约束
1》约定XML文档的书写规则
作为框架的使用者(程序员)需要
1,能够在XML中导入约束
2,能够读懂约束文档
2》约束的分类
1,DTD:一种简单的约束
2,schema:一种复杂的约束
3》如何使用
1,引入DTD约束文档到XML文件中
本地:<!DOCTYPE 根标签名 SYSTEM "dtd文件路径">
网络:<!DOCTYPE 根标签名 PUBLIC "dtd文件URL地址">
2,引入schema
1,填写XML文档的根元素
2,引入前缀 xmlns:xsi=http://www.w3.org/20001/xml
3,引入xsd文件的命名空间 xsi:schemaLocation="http://www.kgc.cn/xml"
4,为每一个xsd约束声明一个前缀 xmlns="http://www.kgc.cn/xml" 作为标识
三,解析
1,概述:
操作XML文档,将XML文档读到内存中
1》,解析
读取,将文档读取到内存中
2》,写入
将内存中数据写到XML文档中
2,解析方式:
1》,DOM:
将XML文档一次性加入内存,形成DOM树,方便CRUD,增删改查操作,但是占用内存较大。DOM树类似树状图
2》,SAX:
将XML文档逐行扫描,不占内存,只能读取不能删除。
3,XML常用解析器:
1》JAXP
Sun公司提供的解析器,支持两种方式 DOM和SAX
2》DOM4J
非常优秀的解析工具
3》Jsoup
是一款java的HTML解析器,可以直接解析URl,HTML内容,它提供了一套API
4》PULL
Android 安卓操作系统解析器 SAX方式