在java中的文档中添加一个节点

时间:2010-07-12 13:46:28

标签: java xml dom

我正在尝试删除并在文档树中添加类似的节点

Element firstItem = (Element) links.item(0);
Element element = (Element)firstItem.cloneNode(true);
int length = links.getLength();
while (0 != length) {
    System.out.println("removing element #" + l + " Length: " + length);
    Element link1 = (Element) links.item(0);
    Element parentElm = (Element) link1.getParentNode();
    parentElm.removeChild(link1);
    length--;
}

// this gives a null pointer exception           
doc.getParentNode().insertBefore(element, null); 

将元素添加到doc的理想方法是什么?删除循环工作正常

1 个答案:

答案 0 :(得分:0)

以下内容将添加一个元素:

Element newElement = doc.createElement("foo");
parentElm.appendChild(newElement);

这将创建一个新的子元素<foo/>,仅当parentElm来自与doc相同的文档时才有效。还有一个名称空间感知版本,在实际情况下可能更有用。

如果您需要在几个现有兄弟之间的确切位置添加新元素(例如,在两个现有子元素之间插入元素),您可以获得对后一个兄弟的引用并使用insertBefore方法。