【发布时间】:2021-03-06 23:07:22
【问题描述】:
我正在使用具有如下树的 dom 循环遍历 XML 文档:
<value>
<value2 number="3"><value3 needed="item1"/></value2>
<value2 number="2"><value3 needed="item2"/></value2>
<value2 number="1"><value3 needed="item3"/></value2>
</value>
我有
NodeList value = aboveNodes.getChildNodes();
for(int i = 0; i < value.getLength(); i++) {
Node value2 = value.item(i);
}
我正在尝试访问 value3,因此我可以获得所需的属性。 但是,我不确定该怎么做。
如果 XML 文档已格式化,则值位于单独的行上,即。
<value2 number="3">
<value3 needed="item1"/>
</value2>
我知道我可以用 getChildNodes 做到这一点,但是当它们在同一行时我该怎么做呢?
换句话说: 如何访问所需的属性?
【问题讨论】:
-
您的示例数据中没有
value33。 -
另外,在这种情况下,您是否也尝试过
getChildNodes? XML 规范没有规定元素必须从新行开始才能成为子元素。 -
@choroba 我有,但它不起作用,我可以手动将它们移动到 XML 文件中的新行,然后 getChildNodes 工作,但不是目前的样子
-
item1是您的预期输出吗? -
你使用什么语言和解析器?
标签: xml dom xml-parsing