XML
简介
可扩展标记语言
特性:
1.平台无关性、独立的标记语言
2.自我描述性
用途:
1.网络传输数据
2.数据存储
3.配置文件
XML文件
.XML 文件是保存XML数据的一种方式
XML数据也可以以其他的方式存在(如在内存中构建XML数据)
文档声明
XML声明
第一行:
<?xml version="1.0" encoding="UTF-8"?>
标记( 元素 / 标签 / 节点 )
XML文档由标记组成
语法:
开始标记(开放标记):<标记名称>
结束标记(必和标记):</标记名称>
标记名称: 命名规则(无空格冒号、区分大小写、不能以xml开始、不能数字标点开始)
根标记、嵌套、子父
- 只允许一个跟标记
- 可以嵌套、不能交叉
- 子、父、兄弟、后代、祖先
属性
- 在标记开始时描述、由属性名和属性值组成
- 每一个属性是一对键值对
- 键与名之间利用 等号 连接,多个属性之间由 空格 分割
- 属性的值必须用 引号 引住
注释
开始 :
<?xlm version="1.0" encoding="UTF-8"?>
<books>
<book id="1001">
<name>第一诗句</name>
<info>月照花林皆似霰</info>
</book>
<!--
注释
-->
<book><![CDATA[<这是CDATA 不是标签></这是CDATA 不是标签>]]></book>
<book id="1002">
<name>第二诗句</name>
<info>空里流霜不觉飞</info>
</book>
</books>
XML解析
步骤
- 引入jar文件 dom4j.jar
- 创建一个指向XML文件的输入流
FileInputStream fis = new FileInputStream(“xml文件的地址”); - 创建一个XML读取工具对象
SAXReader sr = new SAXReader(); - 使用读取工具对象, 读取XML文档的输入流 , 并得到文档对象
Document doc = sr.read(fis); - 通过文档对象, 获取XML文档中的根元素对象
Element root = doc.getRootElement();
文档对象 Document
- 通过文档对象, 获取XML文档中的根元素对象
Element root = doc.getRootElement(); - 添加根节点
Element root = doc.addElement(“根节点名称”);
元素对象 Element
- 获取节点名称
String getName(); - 获取节点内容
String getText(); - 设置节点内容
String setText(); - 根据子节点的名称 , 获取匹配名称的第一个子节点对象.
Element element(String 子节点名称); - 获取所有的子节点对象
List elements(); - 获取节点的属性值
String attributeValue(String 属性名称); - 获取子节点的内容
String elementText(String 子节点名称); - 添加子节点
Element addElement(String 子节点名称);
JSON
简述
JSON:
JavaScript object Notation JS对象简谱 是一种轻量级的数据交换模式
对象格式
- 一个对象,由一个大括号表示
- 用键值对表示属性、键与值用冒号链接、键与值均需用冒号
- 数组[对象] 可以互相嵌套