我有一个包含嵌套标签的XML文本。结构有点复杂。所以我使用XPath
查询来访问子节点,如answer中所述。但是,现在我在该节点中遇到了文本,该节点本身包含XML标记。一旦遇到另一个XML标记,此方法就会停止读取。
以下是XML文件:
<x>
<y>
<z>
This is a <tag>text</tag>
</z>
</y>
</x>
在上面的XML中,可以通过以下方法访问<z>
内的文本:
XPath xpath = XPathFactory.newInstance().newXPath();
XPathExpression expr= xpath.compile("/x/y/z/text()");
String text = (String) expr.evaluate(doc, XPathConstants.STRING);
但是文字的价值是“这只是”。我希望显示整个文本:这是一个文本
答案 0 :(得分:1)
只需使用XPathExpression expr= xpath.compile("/x/y/z");
。