我正在尝试删除并在文档树中添加类似的节点
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的理想方法是什么?删除循环工作正常
答案 0 :(得分:0)
以下内容将添加一个元素:
Element newElement = doc.createElement("foo");
parentElm.appendChild(newElement);
这将创建一个新的子元素<foo/>
,仅当parentElm
来自与doc
相同的文档时才有效。还有一个名称空间感知版本,在实际情况下可能更有用。
如果您需要在几个现有兄弟之间的确切位置添加新元素(例如,在两个现有子元素之间插入元素),您可以获得对后一个兄弟的引用并使用insertBefore方法。