2

我需要一种方法,可以返回指定 xpath 中指定属性的值。因此,例如,如果我们有并且我们想要 xpath 标记内xpath = /root/foo/body/part[5]/test[3]的属性值,那么我需要能够调用一个看起来像这样的方法:idtest[3]

public String getAttributeValue(String xpath, String attribute) {
     String attributeValue = "xpath/attribute".value();
     return attributeValue;
}
4

2 回答 2

3

您可以尝试使用@命令

//xpath[@attribute]

请注意,您还可以使用@

//xpath[@attribute='filtervalue']
于 2013-01-23T11:09:25.790 回答
2

弄清楚了...

public String retrieveAttributeValue(Document document, String xpath, String attribute) throws IOException, ParserConfigurationException, SAXException, XPathExpressionException {
    XPath xPath = XPathFactory.newInstance().newXPath();
    XPathExpression xPathExpression = xPath.compile(xpath + "/" + attribute);
    String attributeValue = "" + xPathExpression.evaluate(document, XPathConstants.STRING);
    return attributeValue;
}
于 2013-01-23T11:30:48.157 回答