Konvertieren org.w3c.dom.Knoten in Dokument
Ich habe eine Node
von einem Document
. Ich möchte, dass Node
und drehen Sie ihn in die root-node eines neuen Document
.
Einzige Art, wie ich denken kann, ist die folgende:
Node node = someChildNodeFromDifferentDocument;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder builder = factory.newDocumentBuilder();
Document newDocument = builder.newDocument();
newDocument.importNode(node);
newDocument.appendChild(node);
Dies funktioniert, aber ich empfinde es eher störend ausführlich. Gibt es eine weniger verbose/mehr direkte Art und Weise ich bin nicht zu sehen, oder muss ich einfach haben, es zu tun auf diese Weise?
Dies ist im Zusammenhang mit stackoverflow.com/questions/3184268/...
InformationsquelleAutor Svish | 2012-11-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den code hat bei mir nicht funktioniert - aber mit einigen änderungen aus dieser stellt sich die Frage, ich könnte es wie folgt funktionieren:
InformationsquelleAutor Mark Butler
Dass sieht ungefähr richtig für mich. Während es sieht in der Regel verbose, es ist sicherlich nicht Aussehen deutlich Ausführlicher als andere code unter Verwendung der DOM-API. Es ist nur eine lästige API, leider.
Natürlich, es ist einfacher, wenn Sie bereits ein
DocumentBuilder
von anderswo - das würde loswerden ziemlich viel code.Recht - und wenn Sie brauchen, um dies in mehr als einem Ort, können Sie leicht schreiben Sie eine
createDocument
Methode in der Hilfsklasse 🙂InformationsquelleAutor Jon Skeet
Vielleicht können Sie diesen code verwenden:
Seine Klassen sind nicht in der Welt existieren...
InformationsquelleAutor Julie Ann C. Ramos