【发布时间】:2015-11-09 10:59:46
【问题描述】:
我有一个如下的 XML 文件:
<customers>
<customer>
<name>XXX</name>
<address>Nagar</address>
<number>
<num1>123</num1>
<num2>456</num2>
</number>
</customer>
<customer>
<name>YYY</name>
<address>Nagar</address>
<number>
<num1>789</num1>
<num2>012</num2>
</number>
</customer>
</customers>
我需要从上到下解析整个XML,得到每个元素的子节点信息。
异常输出:(node = children)
customers = customer,customer
customer = name,address,number
name = null
address = null
number = num1,num2
num1 = null
num2 = null
customer = name,address,number
name = null
address = null
number = num1,num2
num1 = null
num2 = null
我为此使用了 DOM。下面给出代码:
NodeList nodeList = doc.getElementsByTagName("*");
for (int i = 0; i < nodeList.getLength(); i++) {
Node node = nodeList.item(i);
if (node.getNodeType() == Node.ELEMENT_NODE) {
System.out.println(node.getNodeName()+" = "+node.getChildNodes());
}
}
但是我得到这样的输出:
customers = [customers: null]
customer = [customer: null]
name = [name: null]
address = [address: null]
number = [number: null]
num1 = [num1: null]
num2 = [num2: null]
customer = [customer: null]
name = [name: null]
address = [address: null]
number = [number: null]
num1 = [num1: null]
num2 = [num2: null]
你能帮我解决这个问题吗?
【问题讨论】:
标签: java xml xml-parsing