阅读量:4
要根据节点名称获取节点,可以使用XPath表达式来定位节点。使用dom4j库可以很方便地实现这个功能。下面是一个示例代码:
import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.Node; import org.dom4j.XPath; import org.dom4j.io.SAXReader; import java.util.List; public class Dom4jExample { public static void main(String[] args) { try { SAXReader reader = new SAXReader(); Document document = reader.read("example.xml"); String nodeName = "book"; // 要获取的节点名称 // 使用XPath表达式定位节点 XPath xPath = document.createXPath("//" + nodeName); List<Node> nodes = xPath.selectNodes(document); for (Node node : nodes) { Element element = (Element) node; System.out.println(element.asXML()); // 输出节点内容 } } catch (DocumentException e) { e.printStackTrace(); } } }
在上面的示例中,我们首先创建一个SAXReader对象来读取XML文件,然后使用XPath表达式(“//” + nodeName)来定位所有节点名为"book"的节点,并将节点内容打印出来。您可以根据实际情况修改节点名称和XML文件路径。