【发布时间】:2013-11-24 19:15:15
【问题描述】:
我有这个 XML 文件:
<root>
<node1>
<name>A</name>
<node2>
<name>B</name>
<node3>
<name>C</name>
<number>001</number>
</node3>
</node2>
</node1>
</root>
我正在解析文件,以获取每个节点的名称,以及相应的编号(如果存在)。
我用:
String number = eElement.getElementsByTagName("number").item(0).getTextContent();
这应该给我类似的东西:
Name | Number
A |
B |
C | 001
但我明白了:
Name | Number
A | 001
B | 001
C | 001
所以,我认为getElementsByTagName("Number") 在一个节点的所有子节点中寻找数字节点。我不想要那个。有人知道解决方法吗?
我想用 XPath 代替上述方法,但我真的很想知道是否有现成的方法。谢谢
【问题讨论】:
-
你到底想要什么,请用你的完整代码解释...
-
正如我所提到的,我只是想获取每个节点的名称和编号。如果没有数字,它应该显示为 null。但是,我使用的方法会搜索所有后代。我不想那样。