网站首页 > java教程 正文
概述
在前文中,我写过如何使用Java程序来合并Excel及PDF文档的文章。那有关Word文档的合并方法将会在今天这篇文章里详细介绍。通常合并文档有两种方式,一种是直接将被合并文档的正文承接在上一个文档的最后一个段落末尾;另一种则是被合并文档的内容从新的一页开始显示。
此次代码演示所需工具是Free Spire.Doc for Java。请从E-iceblue中文官网上下载获取,解压后将lib文件夹下的Spire.Doc.jar导入IDEA中。
当然,你也可以通过maven仓库来安装产品及导入相应依赖。
代码演示
方式1:使用Document类中的insertTextFromFile方法将不同的文档合并到同一个文档。需要注意的是,被合并文档的内容默认从新的一页开始显示。
import com.spire.doc.Document;
import com.spire.doc.FileFormat;
public class MergeFiles1 {
public static void main(String[] args) {
//获取第一个文档的路径
String filePath1 = "C:\\Users\\Test1\\Desktop\\Sample1.docx";
//获取第二个文档的路径
String filePath2 = "C:\\Users\\Test1\\Desktop\\Sample2.docx";
//加载第一个文档
Document document = new Document(filePath1);
//使用insertTextFromFile方法将第二个文档的内容插入到第一个文档
document.insertTextFromFile(filePath2, FileFormat.Docx_2013);
//保存文档
document.saveToFile("Output/MergeFiles1.docx", FileFormat.Docx_2013);
}
}
生成文档:
方式2:若需将新加入的文档承接到上一个文档的最后一个段落末尾,则可以使用下面的方法获取第一个文档的最后一个section,然后将被合并文档的正文作为新的段落添加到section。
import com.spire.doc.Document;
import com.spire.doc.DocumentObject;
import com.spire.doc.FileFormat;
import com.spire.doc.Section;
public class MergeFiles2 {
public static void main(String[] args) {
//获取第一个文档的路径
String filePath1 = "C:\\Users\\Test1\\Desktop\\Sample1.docx";
//获取第二个文档的路径
String filePath2 = "C:\\Users\\Test1\\Desktop\\Sample2.docx";
//加载第一个文档
Document document1 = new Document(filePath1);
//加载第二个文档
Document document2 = new Document(filePath2);
//获取第一个文档的最后一个section
Section lastSection = document1.getLastSection();
//将第二个文档的段落作为新的段落添加到第一个文档的最后一个section
for (Section section:(Iterable <Section>)document2.getSections()) {
for (DocumentObject obj:(Iterable <DocumentObject>)section.getBody().getChildObjects()
) {
lastSection.getBody().getChildObjects().add(obj.deepClone());
}
}
//保存文档
document1.saveToFile("Output/MergeFiles2.docx", FileFormat.Docx_2013);
}
}
生成文档:
(本文完)
猜你喜欢
- 2024-11-05 POI操作word模板并生成新的word(poi生成word文档)
- 2024-11-05 人工智能文档编写器:使用AI生成Javadocs等文档的插件扩展
- 2024-11-05 Java 操作 Office:POI之word图片处理
- 2024-11-05 在JSP页面中直接以WORD格式或者将页面下载成WORD格式文件
- 2024-11-05 springboot-如何集成screw生成数据库文档
- 2024-11-05 借助Spire.Doc控件,在Java中将 Word 转换为图像
- 2024-11-05 SpringBoot + Screw 一键生成数据库文档
- 2024-11-05 Spire.PDF for Java 8.7.0 增强了 PDF 到 Word 和 Excel 的转换
- 2024-11-05 如此简单!Aspose.Words助力以Java编程方式创建丰富的Word文档
- 2024-11-05 GitHub精选 | 告别手写,一键生成数据库表文档
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)