0

我知道 SO question Failing to get element values using Element.getAttribute()但是因为我是 java 初学者,所以我还有其他问题。我正在尝试构建的是简单的应用程序,它将读取 XML 文件,然后将其与“黄金大师”进行比较。我的问题是:

  • 我有很多不同的 XML 文件,它们的属性不同
  • XML 文件比较大。(810 行归档 - 很难用肉眼检查)

文件示例:

  <DocumentIdentification v="Unique_ID"/>
  <DocumentVersion v="1"/>
  <DocumentType v="P81"/>
  <SenderIdentification v="TEST-001--123456" codingScheme="A01"/>
  <CreationDateTime v="2012-10-15T13:00:00Z"/>
  <InArea v="10STS-TST------W" codingScheme="A01"/>
  <OutArea v="10YWT-AYXOP01--8" codingScheme="A01"/>
  <TimeSeries>
<Period>
 <TimeInterval v="2012-10-14T22:00Z/2012-10-15T22:00Z"/>
   <Resolution v="PT15M"/>
        <Interval>
            <Pos v="1"/>
            <Qty v="500"/>
        </Interval>
        <Interval>
            <Pos v="2"/>
            <Qty v="500"/>
        </Interval>
        <Interval>
            <Pos v="3"/>
                            <Qty v="452"/>
                    </Interval>
                     ...
                     ...
                    <Interval>
            <Pos v="96"/>
                            <Qty v="891"/>
                    </Interval>
               </Period>   
        </TimeSeries>

应用上述问题的解决方案并没有让我更进一步......我意识到我可以将属性转换为NamedNodeMap但我不知道如何以编程方式迭代它

是的,我知道这听起来很像“做我的功课”,但我真正需要的是至少小踢屁股,让我朝着正确的方向前进。感谢帮助

4

1 回答 1

1

该方法item(int index)应该有助于遍历属性:

NamedNodeMap map = getItFromSomeWhere();
int i = 0;
while ((Node node = map.item(i++)) != null) {
   // node is ith node in the named map
}
于 2012-10-24T09:07:42.540 回答