XML 指可扩展标记语言(EXtensible Markup Language),是独立于软件和硬件的信息传输工具,应用于 web 开发的许多方面,常用于简化数据的存储和共享。
当在xml中某一段内容想作为普通信息看待,而其中又出现了大量的xml敏感字符时,使用格式:
< ! [ CDATA [ 文本内容 ] ] >
xml注释使用格式:<!--This is a comment-->
我们使用XML语言存储信息,以实现数据与程序的分离。
为方便测试,定义一个Emp类:
创建一个.xml文件,有以下内容:
解析XML的大致步骤:
1)创建SAXReader
2)使用SAXReader读取XML文档并生成Document对象,这一步就是DOM解析耗时耗资源的地方,因为要先将XML文档全部读取并转换为一个Document对象保存到内存。
3)通过Document获取根元素
4)通过根元素按照XML的结构逐级获取子元素,以达到遍历XML文档数据的目的
常用方法:
Document提供了获取根元素的方法:
Element getRootElement()----Element的每一个实例用于表示XML文档中的一对标签。
Element也提供了获取标签相关信息的方法:
String getName()----获取当前元素的名字
Element element(String name)----获取当前元素中指定名字的子元素
List elements()----获取当前元素中所有子元素
List elements(String name)----获取当前元素中所有同名子元素
String getText()----获取元素中间的文本,开始标签与结束标签中间的文本信息
String elementText(String name)----获取当前元素中指定名字子元素中间的文本
例如:ele.element("xx").getText()等同于:ele.elementText("xx")
Attribute attribute(String name)----获取当前元素中指定名字的属性
Attribute的每一个实例用于表示一个属性,常用方法:
String getName()----获取属性名
String getValue()----获取属性值
生成XML文档的大致步骤:
1)创建一个Document对象
2)向Document对象中添加根元素
3)向根元素中逐级追加子元素以形成XML文档结构
4)创建XmlWriter
5)通过XmlWriter写出Document对象以形成xml文档
6)关闭XmlWriter
Document提供添加根元素的方法:Element addElement(String name)
添加给定名字的根元素,并将其以Element实例形式返回,以便基于根元素继续追加操作。
需要注意,该方法只能调用一次,因为一个文档中只能有一个根元素。
Element提供了向当前元素中添加信息的相关方法:
1)Element addElement(String name)
向当前元素中添加给定名字的子元素,并将该子元素以一个Element实例形式返回,便于
继续对子元素追加信息
2)Element addText(String text)
向当前元素中添加文本,返回值为当前元素,便于对当前元素继续其他操作
3)Element addAttribute(String name,String value)
向当前元素中添加指定名字及对应值的属性
XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。