温馨提示×

dom4j怎么解析指定节点

小亿
113
2024-03-14 14:33:24
栏目: 编程语言

要解析指定节点,你可以使用XPath表达式来定位节点并提取数据。以下是一个使用dom4j解析XML文档并提取指定节点数据的示例代码:

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import java.io.File;
import java.util.List;

public class Dom4jExample {
    public static void main(String[] args) {
        try {
            // 读取XML文件
            File file = new File("example.xml");
            SAXReader reader = new SAXReader();
            Document document = reader.read(file);

            // 使用XPath表达式定位指定节点
            String xPathExpression = "//book[@id='1']"; // 查找id为1的book节点
            List<Element> elements = document.selectNodes(xPathExpression);

            // 提取节点数据
            for (Element element : elements) {
                String title = element.elementText("title");
                String author = element.elementText("author");
                System.out.println("Title: " + title);
                System.out.println("Author: " + author);
            }

        } catch (DocumentException e) {
            e.printStackTrace();
        }
    }
}

在上面的示例中,我们首先读取名为"example.xml"的XML文件,然后使用XPath表达式"//book[@id=‘1’]"定位id为1的book节点。最后,我们提取了该节点下的title和author元素的值并打印出来。你可以根据实际情况修改XPath表达式来定位不同的节点。

0