合并文档可以是将两个包含一定逻辑关系的文档合并成一个完整的文档,也可以是出于方便文档存储、管理的目的合并多个文档为一个文档。下面,就将以上文档操作需求,通过Java程序来实现Word文档合并。合并文档可以分为2种方法来进行:

方法1. 加载两个文档,将文档2插入到文档1。使用该方法合并文档时,被合并文档的内容默认从新的一页开始显示。

方法2. 获取文档1的最后一个section,然后将文档2中的段落作为新的段落添加到section。新加入的文档承接上一个文档的最后一个段落末尾开始显示。

使用工具:Free Spire.Doc for Java (免费版)

Jar文件获取及导入:

获取方法1通过下载jar文件包。解压文件后,将lib文件夹下的Spire.Doc.jar文件导入程序。参考如下导入效果:

获取方法2通过maven导入,可参考导入方法

【示例1】新起一页合并Word文档

import com.spire.doc.*;

public class Merge1 {
public static void main(String[] args) {
//加载文档1
Document doc1 = new Document("test1.docx"); //调用方法将文档2插入到文档1
doc1.insertTextFromFile("test2.doc",FileFormat.Docx_2010); //保存合并后的文档
doc1.saveToFile("Merged1.docx",FileFormat.Docx_2010);
}
}

合并效果:

【示例2】承接上文段落合并Word文档

import  com.spire.doc.*;

public class Merge2 {
public static void main(String[] args){
//加载需要合并的两个文档
Document doc1 = new Document("test1.docx");
Document doc2 = new Document("test2.doc"); //获取文档1的最后一节
Section lastsec = doc1.getLastSection(); //遍历文档2的所有段落内容,添加到文档1
for (Section section:(Iterable <Section>)doc2.getSections()) {
for (DocumentObject obj:(Iterable <DocumentObject>)section.getBody().getChildObjects()
) {
lastsec.getBody().getChildObjects().add(obj.deepClone());
}
} //保存合并后的文档
doc1.saveToFile("Merged2.docx",FileFormat.Docx_2010);
}
}

合并效果:

Java 合并Word文档的更多相关文章

  1. 使用Java生成word文档(附源码)

    当我们使用Java生成word文档时,通常首先会想到iText和POI,这是因为我们习惯了使用这两种方法操作Excel,自然而然的也想使用这种生成word文档.但是当我们需要动态生成word时,通常不 ...

  2. 使用Aspose.word (Java) 填充word文档数据(包含图片填充)

    Aspose填充word数据 本文介绍了如何使用aspose进行word文档的生成,并提供了工具类供参考. 有问题欢迎 call 微信:905369866,小弟尽力而为..毕竟这玩意没吃透. 目录 A ...

  3. poi读写word模板 / java生成word文档

    有一word文档表格 形如: 姓名 ${name} 电话 ${tel} 从数据库读取记录替换上述变量 import java.io.FileOutputStream; import java.util ...

  4. Java生成 Word文档的并打印解决方案

    户要求用程序生成标准的word文档,要能打印,而且不能变形,以前用过很多解决方案,都在客户严格要求下牺牲的无比惨烈. POI读word文档还行,写文档实在不敢恭维,复杂的样式很难控制不提,想象一下一个 ...

  5. Java生成word文档

    itext-rtf-2.1.7.jar,下载地址:http://download.csdn.net/detail/xuxu198899223/7717727 itext-2.1.7.jar 下载地址: ...

  6. Java解析word文档

    背景 在互联网教育行业,做内容相关的项目经常碰到的一个问题就是如何解析word文档. 因为系统如果无法智能的解析word,那么就只能通过其他方式手动录入word内容,效率低下,而且人工成本和录入出错率 ...

  7. Java 处理word文档后在前端展示

    最新新开发的这个项目需要使用word文档并要求能在前端页面上带格式展示,由于项目不是内部使用,所以不考虑插件类的处理模式,都必须要本地处理完成,前端不需要做什么更新或者说安装就能直接访问,类似于百度文 ...

  8. Java操作word文档使用JACOB和POI操作word,Excel,PPT需要的jar包

    可参考文档: http://wibiline.iteye.com/blog/1725492 下载jar包 http://download.csdn.net/download/javashixiaofe ...

  9. 整理关于Java进行word文档的数据动态数据填充

    首先我们看下,别人整理的关于Java生成doc 的 资料. java生成word的几种方案 1. Jacob是Java-COM Bridge的缩写,它在Java与微软的COM组件之间构建一座桥梁.使用 ...

随机推荐

  1. IDEA 2020 集成 Activity插件

    我按照教程打开settings-plugins,搜索actiBPM搜索不到, 于是我就去下载插件,然后再安装,具体步骤如下: 下载插件: 到http://plugins.jetbrains.com/, ...

  2. upstream--负载

    语法格式: upstream 负载名 { [ip_hash;] server ip:port  [weight=数字]  [down]; server ip:port  [weight=数字]; } ...

  3. get、post请求方式在jmeter中使用步骤

    jmeter:性能测试工具,压测 一.jmeter工具测试接口时使用步骤: 1.测试计划右键--添加--Threads(Users)--线程组(线程数就是并发数) 2.线程组右键--Sampler-- ...

  4. PHP7性能提升原因

    1.存储变量的结构体变小,尽量使结构体里成员共用内存空间,减少引用,这样内存占用降低,变量的操作速度得到提升 2.字符串结构体的改变,字符串信息和数据本身原来是分成两个独立内存块存放,php7尽量将它 ...

  5. awk使用说明(复制别人的)

    来源:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html 简介 awk是一个强大的文本分析工具,相对于grep的查找,se ...

  6. 第18课 - make 中的路径搜索(下)

    第18课 - make 中的路径搜索(下) 1. 问题一 当 VPATH 和 vpath 同时出现,make 会如何处理? 工程项目的目录结构如下图所示,src1 和 src2 中都包含了 func. ...

  7. u深度win10pe装机版制作教程

    一款功能强大的u盘启动盘要怎么制作是非常重要的,对于大多数用户来说其中操作步骤并不熟悉.这里小编带来时下最新的u深度win10pe装机版制作教程,教你如何快速的进行u深度U盘的制作,下面就跟小编一起进 ...

  8. 5.Topic与Partition

  9. javaweb开发中的常见错误

    Javaweb中的最常见错误及其解决方法 1.200:表示成功处理业务. 2.400 请求出错: 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就 无法重复此请求. 解决办法:,遇到400 ...

  10. 如何使用 Python 進行字串格式化

    前言: Python有几种方法可以显示程序的输出:数据可以以人类可读的形式打印出来,或者写入文件以供将来使用. 在开发应用程式时我们往往会需要把变数进行字串格式化,也就是说把字串中的变数替换成变量值. ...