所以我有一个格式如下的 xml 文件
<TopXmlTree>
<IndentedItem1>
<subvalue1>
<subvalue2>
<subvalue3>
<IndentedItem1> (Same name as above but a different subset)
<subvalue1>
<subvalue2>
<subvalue3> <<-- I want to get this value
假设我想获取上面的值,有什么方法可以使用 Xpath 来做到这一点吗?通常我的 Xpath 代码很简单,例如
XPathExpression expr = xpath.compile("/TopXmlTree/IndentedItem1/Subvalue1/text()");
鉴于目前的情况,我显然无法做到这一点。
谢谢!
最佳答案
您需要获取第二个 IndentedItem1 子集的 subvalue3 值,因此它看起来像这样:
XPathExpression expr = xpath.compile("//TopXmlTree/IndentedItem1[2]/subvalue3/text()");
关于Java/Xpath——在相似实体中提取特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10637866/