我有一个 XML 文件,例如
<parent>
<child1>
<child2>
<name>name</name>
<value>
<item>value></item>
</value>
</child2>
</child1>
<child1>
<value>
<item>value></item>
</value>
</child1>
</parent>
在这里我需要检查 child2 节点是否丢失。
我的java代码就像
File xmlfile = new File ("sample.xml");
DocumentBuilderFactory dbfaFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = dbfaFactory.newDocumentBuilder();
Document doc = documentBuilder.parse(xmlfile);
NodeList child1= doc.getElementsByTagName("child1");
for( int i=0; i<child1.getLength(); i++)
{
NodeList child1= doc.getElementsByTagName("child1");
if(!doc.getElementsByTagName("child2").equals(null))
{
System.out.println("Not Equal to null");
else
{
System.out.println("Equal to null");
}
}
但是每次我得到 Not Equal to null 时,即使 XML 中缺少 child2 节点。
这里 child2 不见了
<child1>
<value>
<item>value></item>
</value>
</child1>
谢谢。