dom4j通过xpath查询xml
来源:互联网 发布:李云迪 知乎 编辑:程序博客网 时间:2024/05/10 16:50
- 获取Document
- SAXReader saxReader = new SAXReader();
- Document document = saxReader.read(FileUtil.getFileInputStream(fileName));
- 查询Element
- String xpath ="/composites/composite[@type='onDelete']";//查询属性type='ondDelete'的composite
- List<Element> composites = document.selectNodes(xpath);
- xpath语法
选取节点
XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。
下面列出了最有用的路径表达式:
实例
在下面的表格中,我们已列出了一些路径表达式以及表达式的结果:
选取根元素 bookstore
注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
bookstore/book选取所有属于 bookstore 的子元素的 book 元素。//book选取所有 book 子元素,而不管它们在文档中的位置。bookstore//book选择所有属于 bookstore 元素的后代的 book 元素,而不管它们位于 bookstore 之下的什么位置。//@lang选取所有名为 lang 的属性。谓语(Predicates)
谓语用来查找某个特定的节点或者包含某个指定的值的节点。
谓语被嵌在方括号中。
实例
在下面的表格中,我们列出了带有谓语的一些路径表达式,以及表达式的结果:
选取未知节点
XPath 通配符可用来选取未知的 XML 元素。
实例
在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:
选取若干路径
通过在路径表达式中使用“|”运算符,您可以选取若干个路径。
实例
在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:
XPath 轴
轴可定义某个相对于当前节点的节点集。
位置路径表达式
位置路径可以是绝对的,也可以是相对的。
绝对路径起始于正斜杠( / ),而相对路径不会这样。在两种情况中,位置路径均包括一个或多个步,每个步均被斜杠分割:
绝对位置路径:
/step/step/...
相对位置路径:
step/step/...
每个步均根据当前节点集之中的节点来进行计算。
步(step)包括:
- 轴(axis)
- 定义所选节点与当前节点之间的树关系
- 节点测试(node-test)
- 识别某个轴内部的节点
- 零个或者更多谓语(predicate)
- 更深入地提炼所选的节点集
步的语法:
轴名称::节点测试[谓语]
实例
XPath 运算符
下面列出了可用在 XPath 表达式中的运算符:
如果 price 是 9.80,则返回 true。
如果 price 是 9.90,则返回 fasle。
!=不等于price!=9.80如果 price 是 9.90,则返回 true。
如果 price 是 9.80,则返回 fasle。
<小于price<9.80如果 price 是 9.00,则返回 true。
如果 price 是 9.90,则返回 fasle。
<=小于或等于price<=9.80如果 price 是 9.00,则返回 true。
如果 price 是 9.90,则返回 fasle。
>大于price>9.80如果 price 是 9.90,则返回 true。
如果 price 是 9.80,则返回 fasle。
>=大于或等于price>=9.80如果 price 是 9.90,则返回 true。
如果 price 是 9.70,则返回 fasle。
or或price=9.80 or price=9.70如果 price 是 9.80,则返回 true。
如果 price 是 9.50,则返回 fasle。
and与price>9.00 and price<9.90如果 price 是 9.80,则返回 true。
如果 price 是 8.50,则返回 fasle。
mod计算除法的余数5 mod 21- dom4j通过xpath查询xml
- Dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml
- dom4j通过xpath查询xml (转)
- xml解析 dom4j通过XPath找标签
- DOM4J+XPath 解析XML
- xml-dom4j-xpath
- 通过XPath查询XML中的数据
- dom4j xpath 操作 xml 乱码
- xml解析dom4j xpath方式
- dom4j使用XPath解析xml
- The Process of TCP Connection and State Transfer
- Linux下TCP Socket编程C语言小实例
- STM32 GPIO的十大优越功能
- 4312. A + B
- Android Tween动画之RotateAnimation实现图片360°不停旋转
- dom4j通过xpath查询xml
- 微软的罪
- VS2010 重命名一个wp7项目
- Qt 自定义事件详细实例
- 回溯_题目1140:八皇后
- Uva 116 - Unidirectional TSP
- poj1088解题报告
- Catalan数(卡特兰数)
- linux乱码问题:LANG变量的秘诀