Day 2019/3/23
## xml概念
Extensible markup language 可扩展标记语言
*可扩展:标签自定义。
*用途:用于存储数据。
作为配置文件。
在网络传输。
## xml入门
基本语法
<? xml version ='1.0'?>
<student>
<name>polaris</name>
<id>11111</id>
</student>
注意: 1、 第一行必须为文档声明。
2、 有且仅有一个根标签。
3、 区分大小写
## 组成部分
1、文档申明
<? xml 属性列表?>
属性列表:
version(必须):版本号
encoding:编码,默认值: ISO-8859-1
*standalone:是否独立 两个值('yes' or 'no'),表示是否依赖其它文件
2、标签
XML 元素必须遵循以下命名规则:
名称可以含字母、数字以及其他的字符
名称不能以数字或者标点符号开始
名称不能以字符 “xml”(或者 XML、Xml)开始
名称不能包含空格
可使用任何名称,没有保留的字词。
3、属性:
id属性值唯一
4、文本:
特殊字符需要转义,和HTML一样。
可以用CDATA区:可以原样展示数据。
<![CDATA[数据]]>
## xml约束
1、约束文档:一般由框架作者编写的用来规定xml书写规则的文档。
2、约束分类:
DTD:简单约束技术。
schema:比较复杂。
3、DTD分为外部和内部
本地:<!DOCTYPE 根标签名 SYSTEM"DTD文件的位置">(不常用)
网络:<!DOCTYPE 根标签名 PUBLIC "DTD文件名字" "url">
4、schema:
在根标签中引入
xmlns:xsi="url"
xsi:名称空间 + 别名
## xml解析
将文档中的数据读取。
将数据保存当xml文档中
解析xml的方式:
1、DOM:将文档加载进内存,形成一个树形结构。多用于服务器端
优点:操作方便,可以对文档进行crud操作。
缺点:消耗内存。
2、SAX:逐行读取,基于事件驱动。多用于移动端
优点:不占内存
缺点:只能读取,不能增删改
#xml常见的解析器:
1、JAXP:不常用
2、DMO4J:基于DOM,常用。
3、Jsoup:本来用于解析HTML,由于设计合理可以用来解析XML。
4、PULL:ANDROID系统内置的解析器,基于SAX。
XML简介
最新推荐文章于 2024-07-28 17:49:02 发布