Java使用DOM4J解析XML文件教程

需积分: 33 8 下载量 40 浏览量 更新于2024-09-09 收藏 6KB TXT 举报
"Java 使用 DOM4J 读取 XML 文件" 在 Java 开发中,处理 XML 文档是一项常见的任务,DOM4J 是一个强大的、灵活的开源库,专门用于处理 XML、XPath 和 XSLT。它提供了一种简单且直观的方式来解析、创建和操作 XML 文档,是 Java 开发者在处理 XML 数据时的首选工具之一。在这个例子中,我们将探讨如何利用 DOM4J 库来读取并解析 XML 文件。 首先,你需要下载 dom4j-1.6.1.jar 文件,这是一个包含 DOM4J 库的 JAR 包,可以从 http://sourceforge.net/directory/os:windows/freshness:recently-updated/?q=dom4j 获取。将这个 JAR 文件添加到你的项目类路径中,以便能够使用 DOM4J 提供的所有功能。 接下来,我们有一个名为 AirPortLine.xml 的示例 XML 文件,包含了航班线路的信息,包括线路 ID、车站 ID 和车站名称。例如: ```xml <?xml version="1.0" encoding="UTF-8"?> <AirPortLine> <line lid="MU2480" num="3"> ... </line> <line lid="MU2483" num="4"> ... </line> <line lid="MU2485" num="2"> ... </line> </AirPortLine> ``` 要使用 DOM4J 读取并解析这个 XML 文件,你可以创建如下的 Java 代码: ```java package com.hsinghsu.testXML; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; import java.io.File; public class DOM4JExample { public static void main(String[] args) { try { // 创建 SAXReader 对象 SAXReader reader = new SAXReader(); // 加载 XML 文件 File inputFile = new File("AirPortLine.xml"); Document document = reader.read(inputFile); // 获取根元素 Element rootElement = document.getRootElement(); String rootName = rootElement.getName(); System.out.println("根元素名称:" + rootName); // 遍历所有 line 元素 for (Element line : rootElement.elements("line")) { // 获取 line 的属性值 String lid = line.attributeValue("lid"); int num = Integer.parseInt(line.attributeValue("num")); System.out.println("线路 ID:" + lid); System.out.println("线路站数:" + num); // 遍历 line 下的所有 station 元素 for (Element station : line.elements("station")) { int sid = Integer.parseInt(station.element("sid").getText()); String sname = station.element("sname").getText(); System.out.println("车站 ID:" + sid); System.out.println("车站名称:" + sname); } } } catch (DocumentException e) { e.printStackTrace(); } } } ``` 这段代码首先创建了一个 `SAXReader` 对象,然后使用它来读取 XML 文件并得到 `Document` 对象。接着,获取 XML 文档的根元素,并遍历其中的所有 `line` 元素。对于每个 `line`,提取其属性值并遍历其内部的 `station` 元素。这样,你就可以轻松地访问和处理 XML 文件中的所有数据。 通过使用 DOM4J,开发人员可以轻松地处理复杂的 XML 结构,包括遍历节点、修改节点内容、添加或删除节点等。此外,DOM4J 还支持 XPath 查询,这使得查找特定的 XML 节点变得更加简单。DOM4J 是 Java 开发中处理 XML 的强大工具,无论你是新手还是经验丰富的开发者,都能快速上手并提高工作效率。