我是XPath和XML的新手。我试图从标签中检索特定标签的值。以下树结构中的特定标记
<article>
<front>
<article-meta>
<supplementary-material id="SM2379">
<caption><title>arg_3.docx</title></caption>
</supplementary-material>
<supplementary-material id="SM2375">
<caption><title>arg_2.docx</title></caption>
</supplementary-material>
<supplementary-material id="SM2373">
<caption><title>Sulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.docSulental_material.doc</title></caption>
</supplementary-material>
</article-meta>
</front>
</article>
我想要检索所有&#39; 标题&#39;此示例文件中的标记以及&#39; id &#39;父标签。由于我需要添加到现有功能,我有一些限制,如使用jdom,可以使用xpath等
真正感谢任何帮助
答案 0 :(得分:0)
如果节点像你的例子一样直接构建,那么很容易实现你尝试做的事情。
你必须
//title
将在您的情况下执行)ID
这些任务应该很容易处理!
除了评论:
您提供的代码:
XPath xpath = XPathFactory.newInstance().newXPath();
NodeList n1 = (NodeList) xpath.evaluate("article/front/article-meta/supplementary-material/caption/title", document, XPathConstants.NODESET);
for (int k = 0; k < n1.getLength();k++)
{
System.out.println(n1.item(k).getNodeName()+" : "+n1.item(k).getTextContent());
}
工作得很好。但是您提供的代码在我的IDE中有一些 UTF-8问题