在java解析xml文件的过程中,有时需要获取符合某些特定条件的节点,以下是实现代码。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import javax.xml.xpath.xpath; import javax.xml.xpath.xpathconstants; import javax.xml.xpath.xpathexpressionexception; import javax.xml.xpath.xpathfactory; import org.eclipse.swt.widgets.shell; import org.eclipse.swt.widgets.text; import org.w3c.dom.element; string value = new string( "test" ); xpath xpath = xpathfactory.newinstance().newxpath(); string expression = "//elementname[@modulename='" + value + "']" ; element element = null ; try { element = (element) xpath.evaluate(expression, document, xpathconstants.node); } catch (xpathexpressionexception e) { e.printstacktrace(); } |
以上程序的作用是,在所有elementname节点中,找到一个属性modulename为value的节点。
如果需要找到所有符合条件的节点,则需要将xpathconstants.node改为xpathconstants.nodeset。此时,返回值类型为nodelist类型,进行强制类型转换后即可对所有符合条件的节点进行进一步的操作。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/li_canhui/article/details/6634855