在Java中合并到xml

时间:2014-03-18 06:59:50

标签: java xml xmldom

我有以下2个xmls:

XML1:

<Sctn>
  <CI>
  <G>WCARD_HM</G>
  <Ty>INFO</Ty>
  <Tt>3600</Tt>
  <Ts>1395118210.1</Ts>
  </CI>
</Sctn>

XML2:

<CI>
  <G>WCARD_Off</G>
  <Ty>Test</Ty>
  <Tt>1234</Tt>
  <Ts>1395derr</Ts>
</CI>

现在,我想将xml2添加到Xml1的Sctn标记中。即,生成的xml应为:

<Sctn>
      <CI>
        <G>WCARD_HM</G>
        <Ty>INFO</Ty>
        <Tt>3600</Tt>
        <Ts>1395118210.1</Ts>
      </CI>
      <CI>
        <G>WCARD_Off</G>
        <Ty>Test</Ty>
        <Tt>1234</Tt>
        <Ts>1395derr</Ts>
      </CI>
</Sctn>

有没有办法在不迭代Xml2的每个元素的情况下执行此操作?

1 个答案:

答案 0 :(得分:0)

非常简单,实际上(即使使用DOM标准):

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    factory.setNamespaceAware(true);
    DocumentBuilder builder = factory.newDocumentBuilder();

    Document d1 = builder.parse(...);
    Document d2 = builder.parse(...);

    d1.getDocumentElement().appendChild(d1.importNode(d2.getDocumentElement(), true));