当前位置:  开发笔记 > 编程语言 > 正文

在Java中查询XML的最简单方法

如何解决《在Java中查询XML的最简单方法》经验,为你挑选了3个好方法。

我有XML的小字符串,如:

String myxml = "goodhi";

我想查询以获取其内容.

最简单的方法是什么?



1> McDowell..:

使用Java 1.5及更高版本的XPath,没有外部依赖:

String xml = "goodhi";

XPathFactory xpathFactory = XPathFactory.newInstance();
XPath xpath = xpathFactory.newXPath();

InputSource source = new InputSource(new StringReader(xml));
String status = xpath.evaluate("/resp/status", source);

System.out.println("satus=" + status);


看起来不是很简单;-)

2> Jonik..:

使用dom4j,类似于McDowell的解决方案:

String myxml = "goodhi";

Document document = new SAXReader().read(new StringReader(myxml));
String status = document.valueOf("/resp/msg");

System.out.println("status = " + status);

使用dom4j,XML处理有点简单.还存在其他几个可比较的XML库.这里讨论 dom4j的替代方案.



3> Peter Štibra..:

以下是如何使用XOM执行此操作的示例:

String myxml = "goodhi";

Document document = new Builder().build(myxml, "test.xml");
Nodes nodes = document.query("/resp/status");

System.out.println(nodes.get(0).getValue());

我更喜欢XOM而不是dom4j,因为它的简单性和正确性.即使您想要,XOM也不会让您创建无效的XML ;-)(例如,在字符数据中使用非法字符)

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有