追加两个 XmlObject

Appending two XmlObjects

我有两个使用 XmlBeans 的 XmlObject。我想附加一个 XmlObject 作为另一个的元素。

举个例子:

XmlObject 1:

<Object1>
    <attr><attr/>
    <attr><attr/>
<Object1/>

XML 对象 2:

<Object2>
    <attr><attr/>
    <attr><attr/>
<Object2/>

附加的 XmlObject:

<Object1>
    <attr><attr/>
    <attr><attr/>
    <Object2>
         <attr><attr/>
         <attr><attr/>
    <Object2/>
<Object1/>

我找到了几个关于使用 NodeLists 进行合并的链接,但它们似乎并不是我要找的东西。任何帮助都会很棒,谢谢。

我通过使用 DOM 文档弄明白了。 XmlBeans 自然会转换为 DOM 文档。从那里您可以使用附加方法来添加子节点。添加节点后,您可以将文档解析回 XmlObject。

请看下面:

XmlObject xmlObject = ...;
XmlObject xmlObject1 = ...;

Document myDoc = myXmlObject.getMyXmlObject().getDomNode().getOwnerDocument();
Node newNode = myDoc.importNode(myXmlObject2.getMyXmlObject().getDomNode(), true);
myDoc.getDocumentElement().appendChild(newNode);
XmlObject obj = XmlObject.Factory.parse(myDoc);

obj 是作为 XmlObject 新附加的文档。