java XPath怎么获取节点属性的值

2025-02-22 12:55:37
推荐回答(3个)
回答1:

我用的java.
List att = xmlConfig.getList("//permission[@module="609"]/@idEnable");
for(int i=0; i{
String value = ((Attribute)att.get(i)).getValue();
}

回答2:

得到Node/Element,就可以得到Attributes、即得到属性

回答3:

亲自实验;

例如:
【前提是已经获得到file这个结点。】
如果想获得这个结点的name属性值: getNodeStringValue(node,"./@taskid")
输出一下结果就是:test

【注】:如果不加@ 符号,
例如: getNodeStringValue(node,"./name")
表示获取file节点的子节点内容(子节点为name)

我的getNodeStringValue代码:

/**
* 根据xpath取得节点的文本值
*
* @param node
* 节点
* @param expression
* XPath表达式
* @return String
* @throws XPathExpressionException
* XPath表达式异常
* @see [类、类#方法、类#成员]
*/
public String getNodeStringValue(Node node, String expression) throws XPathExpressionException {
XPathExpression xpexpreesion = this.xpath.compile(expression);
Object object = xpexpreesion.evaluate(node, XPathConstants.STRING);
return (String) object;
}
希望能帮到你。

楼上两劲瞎扯,测试过么。。