-1

请参考示例 XML 文件

<root>
<A id="101">
<B></B>
<C id="Hello" name="World"> </C>
<D id="First D"> </D>
</A>
<X id="102"> Shawn </X>
<Y id="Java World"> </Y>
<Z> Cool </Z> 
<D id="Second D"> </D>    
</root>

我想使用 Java Dom Parser 功能显示 ID =“Second D”的标签“D”。

请帮助我。

4

2 回答 2

0

首先我会决定你想使用哪个 DOM-Parser 库。我更喜欢JDOM2。网上有很多教程。您唯一需要做的就是读取文档(JDOM-Document 的字符串),然后读取 doc.getRootElement().getChildText("D")。当然,你应该做一些错误检查,比如读入的文档是否为空或根元素等等。我认为这足以帮助您自己完成工作。

编辑:我看到您的 xml 文件结构不正确,正如您在最后一行看到的那样,您有一个结束标记,但在上面的同一行中被关闭。

于 2013-08-08T08:53:08.633 回答
0

@湿婆。请尝试以下给定的代码并让我知道结果。

XPath xPath =  XPathFactory.newInstance().newXPath();
String expression = "/root/D[@id='Second D']/text()";
NodeList nodeList1 = (NodeList) xPath.compile(expression).evaluate(doc, XPathConstants.NODESET);
for (int i = 1; i <= nodeList1.getLength(); i++) {
System.out.println(nodeList1);
}

建议:如果您的 XML 文件内容较少,请选择 DOM Parser,因为它在 XPath 的帮助下易于使用。

于 2014-11-04T16:10:11.530 回答