我想在xml模型中创建QDomDocument
的深层副本,以便用户以后可以将文档恢复到其原始状态。 QDomDocument documentation表示可以使用cloneNode()
来实现。但是,cloneNode()
会返回QDomNode
,而不是QDomDocument
,而我似乎无法弄清楚如何将其正确添加到新文档中。
我试过了:
QDomDocument copy;
copy.importNode(existingDocument.cloneNode(true),true);
和
QDomDocument copy;
copy.appendChild(existingDocument.cloneNode(true),true);
但都不起作用。
答案 0 :(得分:2)
如果您有QDomNode,则可以使用其toDocument功能。
假设 QDomNode节点是从cloneNode()返回的节点
QDomDocument newDocument = node.toDocument();