利用xpath 表达式,解析xml文件的内容,可以获取多个节点的值,也可以获取单个节点对应的值。示例代码如下:
import java.io.File;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.SAXReader;
public class XPathParseXml {
public static void main(String[] args) {
SAXReader reader = new SAXReader();
try {
Document doc = reader.read(new File("./src/document.xml"));
String xpath = "/books/book/English/FristLevel/bookName[text()='MKX]/../bookValue";
List<Node> nodes = doc.selectNodes(xpath);
for(Node node :nodes){
Element e = (Element) node ;
String ss = e.getText();
System.out.println(ss);
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
}