已经阅读了大量关于阅读XML的文章,但几乎所有文章都在阅读完整的文档并将其打印出来。
但我想获得具体的内容..
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="es">Harry Potter and the Half-Blood Prince</title>
<author>J. K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
这里作为示例读取category = children作者的内容= J.K:Rowling。
是可能的,是的,有人有一些代码吗?
感谢
答案 0 :(得分:1)
事实上,使用XPath,您可以轻松地检索类别=&#39; children&#39;的价值作者。
没有经过测试的解决方案,但您有这个想法(我已经预先指定了一些软件包来指导您,因为XPATH中存在一些简单的类名以满足其他需求):
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = builderFactory.newDocumentBuilder();
org.w3c.dom.Document document = builder.parse(yourXmlFile);
XPath xpath = XPathFactory.newInstance().newXPath();
org.w3c.dom.Node authorNode= (Node) xpath.evaluate("//book[@category='children']/author", document,
XPathConstants.NODE);
String author= authorNode.getTextContent();