删除XML子节点

时间:2016-07-12 12:26:47

标签: xml dom xpath

嗨我在删除XML节点时遇到了麻烦。

    <Instance>
      <Internal>
        <Attribute>
        <Name>length</Name>
        </Attribute>
      <Name>internal</Name>
      </Internal>
    <Name>Instanec</Name>
   </Instance>

我想删除名称节点,以便我的输出低于。

    <Instance>
      <Internal>
        <Attribute>
        </Attribute>
      </Internal>
   </Instance>

我尝试了以下代码:

NodeList baseElmntLst2 = doc.getElementsByTagName("Name");
        for (int k = 0; k < baseElmntLst2.getLength(); k++) {
            Element node = (Element) baseElmntLst2.item(k);
            Element node2 = (Element) baseElmntLst2.item(k).getParentNode();
            node2.removeChild(node);

}

但它不会删除我不理解的所有名称元素。

三江源

1 个答案:

答案 0 :(得分:1)

DOM NodeListlive collections所以如果你想以NodeList的方式删除所有项目,那么最终会从... { for (int k = baseElmntLst2.getLength(); k >= 0; k--)。或者使用while (baseElmntLst2.getLength() > 0) baseElmntLst2.item(0).getParentNode().removeChild(baseElmntLst2.item(0));