【发布时间】:2015-04-07 00:20:23
【问题描述】:
我正在尝试向 xml 添加元素。我关注了Java DOM - Inserting an element, after another 但这对我不起作用。这是我的代码:
Element e = dom.createElement("mapping");
e.setAttribute("resource", "/some/path/to/file");
Element lastChild = (Element)nList.item(nList.getLength()-1);
Element parent= (Element)nList.item(nList.getLength()-1).getParentNode();
lastChild.getParentNode().insertBefore(e, lastChild);
我也尝试过parent.appendChild(e);,但它们都不起作用。代码似乎没有问题。可能是什么问题?
我在 macosx 上使用 Netbeans。这是因为文件权限吗?
【问题讨论】:
-
"代码似乎没有问题。" 是什么让你这么认为?
-
因为我已经测试了几次并且没有错误。也没有任何逻辑缺陷,同样的 sn-p 似乎也适用于其他人。
-
没有错误仅仅意味着代码成功地做了某事,并不意味着它做了你想要的。如果相同的 sn-p 对其他人有效,那么您的代码中显然存在“逻辑”缺陷,尽管可能不是特别在那个 sn-p 中。
-
例如,你怎么知道这段代码没有“工作”?很可能
e实际上是在lastChild之前插入的,但无论您做什么来验证这是不正确的。 -
“这是因为文件权限的原因吗?” 也许吧?我们不在您的计算机上,因此我们无法回答有关您的环境的具体信息。尝试编写一个将文件作为文本读取的快速测试;如果它读取它,则您具有读取权限。