用 Dom4j 解析 XML 及中文问题
本文主要讨论了用 dom4j 解析 XML 的基础问题,包括建立 XML 文档,添加、修改、
删除节点,以及格式化(美化)输出和中文问题。可作为 dom4j 的入门资料。
1. 1. 下载与安装
dom4j 是 sourceforge.net 上的一个开源项目,主要用于对 XML 的解析。从 2001 年 7 月发布
第一版以来,已陆续推出多个版本,目前最高版本为 1.5。
dom4j 专门针对 Java 开发,使用起来非常简单、直观,在 Java 界,dom4j 正迅速普及。
可以到 http://sourceforge.net/projects/dom4j 下载其最新版。
dom4j1.5 的完整版大约 13M,是一个名为 dom4j-1.5.zip 的压缩包,解 压后有一个 dom4j-1.5.jar
文件,这就是应用时需要引入的类包,另外还有一个 jaxen-1.1-beta-4.jar 文件,一般也需要
引入,否则执行时可能抛 java.lang.NoClassDefFoundError: org/jaxen/JaxenException 异常,其
他 的包可以选择用之。
2. 2. 示例 XML 文档(holen.xml)
为了述说方便,先看一个 XML 文档,之后的操作均以此文档为基础。
holen.xml
<?xml version="1.0" encoding="UTF-8"?>
<books>
<!--This is a test for dom4j, holen, 2004.9.11-->
<book show="yes">
<title>Dom4j Tutorials</title>
</book>
<book show="yes">
<title>Lucene Studing</title>
</book>
<book show="no">
<title>Lucene in Action</title>
</book>
<owner>O'Reilly</owner>
</books>
这是一个很简单的 XML 文档,场景是一个网上书店,有很多书,每本书有两个属性,一个
是书名[title],一个为是否展示[show],最后还有一项是这些书的拥有者[owner]信息。
3. 3. 建立一个 XML 文档
/**
* 建立一个 XML 文档,文档名由输入属性决定