Here is how to run that XPath expression and print the result as XML:
// Apply XPath to XML file
XPath xPath = XPathFactory.newInstance().newXPath();
NodeList nodes = (NodeList) xPath.evaluate(
"//department/employees",
new InputSource("test.xml"),
XPathConstants.NODESET);
// Print results as XML
Transformer transformer = TransformerFactory.newInstance().newTransformer();
for (int i = 0; i < nodes.getLength(); i++) {
transformer.transform(
new DOMSource(nodes.item(i)),
new StreamResult(System.out));
}
Output
<?xml version="1.0" encoding="UTF-8"?><employees>
<employee>
<name>test</name>
<gender>masculin</gender>
<seniority>2</seniority>
<children>2</children>
<languages>
<language>engleza</language>
<language>spaniola</language>
</languages>
<projects>
<project>japanos</project>
<project>mercur</project>
<project>luxurious</project>
</projects>
</employee>
<employee>
<name>test</name>
<gender>feminin</gender>
<seniority>7</seniority>
<children>1</children>
<languages>
<language>english</language>
<language>spanish</language>
</languages>
<projects>
<project>armaghedon</project>
<project>tupe</project>
</projects>
</employee>
</employees>
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…