XML:可扩展性标记语言
应用于Web开发的许多方面,简化数据的存储和共享。简化数据传输,简化平台的变更。
<?xml version="1.0" encoding="utf-8" ?>
必须有根元素,不被其他元素包围。
元素必须正确嵌套。
实体引用:<(<) 、>(>)、&(&)、&apos(') 、"(")
CDATA段
格式:<![CDATA [文本内容]]>特殊标签中的实体引用都被忽略,所有内容被当成一整块文本数据对待。
XML解析:
SAX(Simple API for XML)是一种XML解析的替代方式,相比较于DOM,SAX更快,更有效率,一般扫描一般解析。缺点:不能对节点进行修改。
使用SAXReader读取XML文档。(导入dom4j-full.jar包)
dom4j是一个Java的XML API,用来读写XML文件
创建SAXReader
SAXReader reader = new SAXReader();
Document doc = reader.read(new File(filename))
Document的常用方法:
Element getRootElement() 用以获取根元素。
Element的常用方法:
Element element(String name) 获取当前元素下的指定名字的子元素
List elements()
String getName()
String getText()
Attribute attribute(int index) 从0开始获取属性
Attribute attribute(String name)
Attribute常用的方法:
String getName();
String getValue();
写XML:
创建Document对象:DocumentHelper的静态方法static Document createDocument()
添加根元素:Element addElement()
为元素添加属性:Element addAttribute(String name,String value)
为元素添加指定内容的文本:Element addText(String text)
当我们构建完XML文档后,可以通过XMLWriter将文档输出以生成xml文件
XMLWriter writer = new XMLWriter();
FileOutputStream fos = new FileOutputStream("builder.xml");
writer.setOutpStream(fos);
writer.write(doc);
writer.close();
XPATH:
用以在xml文档中查找信息。
使用它必须导入(jaxen-xx-xx.jar)
List selectNodes(String apath)
例如:List list = doc.selectNodes("/project/path[@id='cp']");