阅读量:3
要解析指定节点,你可以使用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表达式来定位不同的节点。