我有两个 xml 文件,如下所示,我需要从一个 xml 文件中读取一个节点,并将该节点附加到另一个 xml 文件中。
Xml 文件:1
<A>
<B>
<c>1<c/>
<d>2<d/>
<e>3<e/>
</B>
</A>
Xml 文件:2
<AA>
<BB>
<cc>1<cc/>
<dd>2<dd/>
<ee>3<ee/>
<ff>
<gg>4</gg>
<ff>
</BB>
</AA>
结果
<A>
<B>
<BB>
<cc>1<cc/>
<dd>2<dd/>
<ee>3<ee/>
<ff>
<gg>4</gg>
<ff>
</BB>
<c>1<c/>
<d>2<d/>
<e>3<e/>
</B>
</A>
非常感谢您提供的任何建议。
最佳答案
为了扩展 Lucas 上面的第一条评论,您可以尝试使用 SimpleXML 将两个 XML 文件读入内存,即“反序列化”。将 XML 读入内存对象的示例代码如下所示:
Serializer serializer = new Persister();
File source = new File("example.xml");
Example example = serializer.read(Example.class, source);
然后,一旦将两个结果合并到第三个对象中,您还可以使用 SimpleXML 将第三个对象写入文件(也称为“序列化”)。
使用内存数据写入 XML 文件的示例代码:
Serializer serializer = new Persister();
Example example = new Example("Example message", 123);
File result = new File("example.xml");
serializer.write(example, result);
SimpleXML 有 good tutorial并可以通过添加 Maven dependency 来导入.
花一点时间阅读本教程,它应该会让您朝着正确的方向前进。
关于java - 使用 java 将 xml 节点从另一个 xml 文件附加到现有 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15661975/