如何在java中读取带有属性的xml文件?
我知道这个问题,但因为我是java begginer,所以我还有其他问题。我试图构建的是一个简单的应用程序,它将读取XML文件,然后将其与“golden master”进行比较。我的问题是:如何在java中读取带有属性的xml文件?,java,xml,Java,Xml,我知道这个问题,但因为我是java begginer,所以我还有其他问题。我试图构建的是一个简单的应用程序,它将读取XML文件,然后将其与“golden master”进行比较。我的问题是: 我有很多不同的XML文件,它们的属性不同 XML文件相对较大。(810行文件-肉眼难以检查) 文件示例: <DocumentIdentification v="Unique_ID"/> <DocumentVersion v="1"/> <DocumentType
- 我有很多不同的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
,但我不知道如何通过编程进行迭代
是的,我知道这听起来很像“做我的家庭作业”,但我真正需要的是至少一点小小的打击,让我朝着正确的方向前进。感谢您的帮助方法项(int index)
应该有助于迭代属性:
NamedNodeMap map = getItFromSomeWhere();
int i = 0;
while ((Node node = map.item(i++)) != null) {
// node is ith node in the named map
}
比较这两个文件的目的到底是什么?根据您需要实现的具体目标,您可能会更轻松地完成任务。我的想法是:读取文件并与预期值进行比较:尤其是带有InArea和OutArea的位,SenderIdentification-这些代码特定于每个文件,并且对于该名称应该是唯一的。在这种情况下,您可以按照Andreas_D的建议,从doing node.getAttributes()获取namedNodeMap,然后使用getNamedItem(“v”)获取属性Who Own Watson。。。我现在觉得自己完全哑巴了:)只是另外一个问题-如果我这样做
node.toString()
它会打印dontent吗?(哑巴)我打赌您正在查找节点#getNodeValue
,它将是属性值(如果节点是属性)<代码>节点#getNodeName是属性名称。