繁体   English   中英

Java使用dom删除xml节点

[英]Java delete xml nodes using dom

我正在使用dom处理我的xml文件,我在表单上有一个输入

<students>
    <tableRow>
        <id>1</id>
        <name>ams</name>
        <grade>100</grade>
    </tableRow>
    <tableRow>
        <id>1</id>
        <name>ams</name>
        <grade>100</grade>
    </tableRow>
</students>

我想删除所有在表单上的节点

<students>
</students>

我尝试了以下代码

Node node = doc.getFirstChild();
while (node.hasChildNodes())
    node.removeChild(node.getFirstChild());

还有这个

NodeList list = doc.getElementsByTagName("tableRow");
Node node = doc.getFirstChild();
for(int i = 0; i < list.getLength(); i++)
    node.removeChild(list.item(i));

但他们都不起作用。 有什么建议么?

更新
我有这个例外

org.w3c.dom.DOMException:NO_MODIFICATION_ALLOWED_ERR:试图修改不允许修改的对象。 com.sun.org.apache.xerces.internal.dom.ParentNode.internalRemoveChild(未知来源)com.sun.org.apache.xerces.internal.dom.ParentNode.removeChild(未知来源)

如果您显示的示例是完整的XML文档,那么我认为您只需要doc.getDocumentElement().setTextContent("")删除文档元素的所有子节点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM