使用XPath技术快速获取节点
Posted lujunlong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用XPath技术快速获取节点相关的知识,希望对你有一定的参考价值。
代码示例:
package AAA;
import java.io.File;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
public class TestXPath {
public static void main(String[] args) throws DocumentException {
//(1)创建SAXReader对象
SAXReader reader = new SAXReader();
//(2)读取XML文件
Document doc = reader.read("book.xml");
//得到第一个author节点
Node node = doc.selectSingleNode("//author");
System.out.println("节点名称:"+node.getName()+" "+node.getText());
System.out.println();
//获得所有的author
List<Node> nodes = doc.selectNodes("//author");
for (Node n :nodes) {
System.out.println("节点名称:"+n.getName()+" "+n.getText());
}
//选择有ID属性的元素
List<Attribute> attributes = doc.selectNodes("//book/@id");
for (Attribute att:attributes) {
System.out.println("属性名称:"+att.getName()+" 属性值:"+att.getValue());
}
}
}
以上是关于使用XPath技术快速获取节点的主要内容,如果未能解决你的问题,请参考以下文章