合并xml java_使用JAVA合并多个XML文件的不同节点

与其他可用的XML处理API相比,对我来说,

使用DOMBuilder和SAXBuilder JDOM的用户更适合:

>修改XML文档

> XML树遍历和对任何部分的随机访问

>合并文件

这是合并两个XML文档的完整工作示例:

SAXBuilder builder = new SAXBuilder();

Document doc1 = builder.build(new File("E:\XML1.xml"));

Document doc2 = builder.build(new File("E:\XML2.xml"));

String rootName = doc1.getRootElement().getName();

Element newRoot = new Element(rootName);

Document newDoc = new Document(newRoot);

Element root1 = doc1.getRootElement();

Element root2 = doc2.getRootElement();

// creating declaraion element by merging the declaration content

Element declaration = new Element("declaration");

declaration.addContent(root1.getChildText("declaration"));

declaration.addContent(root2.getChildText("declaration"));

newRoot.addContent(declaration); // add declaration element to new document

newRoot.addContent(root1.getChild("template").clone());

// directly adding template from document XML1,

//after getting template child,

//it needs to be cloned to detached from its parent

newRoot.addContent(root2.getChild("template").clone());

// same for document XML2

/*** now code yourself for system element here ***/

XMLOutputter outputter = new XMLOutputter();

outputter.output(newDoc, System.out);

// output the new doc, pass your OutputStream to this function

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值