**已关闭。**此问题需要debugging details。当前不接受答案。
编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答问题。
1小时前关闭。
Improve this question
我有这个密码
DocumentBuilderFactory docb = DocumentBuilderFactory.newInstance();
DocumentBuilder dom = docb.newDocumentBuilder();
Document doc = dom.newDocument();
Element raiz = doc.createElement("Alumnos");
//-Problem here
doc.getDocumentElement().appendChild(raiz);
这应该创建一个XML文件,但是当我尝试这样做时,我得到了一个异常:
线程“AWT-EventQueue-0”中出现异常。无法调用“组织.w3c.dom.Element.appendChild(组织.w3c.dom.Node)”,因为“组织.w3c.dom.Document.getDocumentElement()”的返回值为空
我不知道为什么会得到这个,为什么文档元素是空的,我是不是忘了什么?
我试图创建一个XML文件以便以后追加元素,但是我得到了那个错误。
1条答案
按热度按时间ffx8fchx1#
你已经创建了一个空文档,它还没有一个documentElement,所以
getDocumentElement()
返回null
.方法doc.createElement
只是创建一个元素,它并不把它添加到文档中,你需要显式地这样做:换句话说,删除对
getDocumentElement()
的调用,但直接在doc
上调用appendChild(raiz)
,这将使Alumnos
成为文档元素(根元素)。之后,对
doc.getDocumentElement()
的调用将返回与raiz
所引用的对象相同的对象。