如何从现有构建器节点构造新的文档构建器?

时间:2011-01-11 23:04:46

标签: java xml dom xml-namespaces xmldom

我有以下代码:

DocumentBuilderFactory dbFactory_ = DocumentBuilderFactory.newInstance();
Document doc_;
DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
doc_ = dBuilder.parse(inputSource);
doc_.getDocumentElement().normalize();

然后我遍历doc_以获取特定节点。然后我想用该节点创建一个新的dBuilder。到目前为止,我一直在努力取得的成功是将我的节点转换为字符串,然后将dBuilder.parse字符串转换为字符串,但由于我遇到名称空间问题和其他问题而无法正常工作。

<Random>
  <Fixed></Fixed>
</Random>

因此,我将把<Fixed>节点取出并创建一个全新的类,它是根节点。

1 个答案:

答案 0 :(得分:2)

创建一个新文档,然后将您的节点导入其中,如下所示:

Document otherDoc = dBuilder.newDocument();
Node importedNode = otherDoc.importNode(myNode, true);
otherDoc.appendChild(importedNode);