欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > word合并

word合并

2025/2/5 12:54:28 来源:https://blog.csdn.net/weixin_43543654/article/details/145176030  浏览:    关键词:word合并

手动方法:

Word拆分生成多个文档与合并多个文档,多人协作办公必备技巧_Word联盟

java方法1_Spire.Doc for Java

优点:那是真简单,五行代码搞定。

缺点:付款哦,导包问题独立仓库

Java 合并 Word 文档

 <dependency><groupId>e-iceblue</groupId><artifactId>spire.doc</artifactId><version>12.12.21</version></dependency>
import com.spire.doc.*;public class Test{public static void main(String[] args){//获取第一个文档的路径String filePath1 = "D:\template_01.docx";//获取第二个文档的路径String filePath2 = "D:\template_02.docx";//加载第一个文档Document document = new Document(filePath1);//使用insertTextFromFile方法将第二个文档的内容插入到第一个文档document.insertTextFromFile(filePath2, FileFormat.Docx_2013);//保存文档document.saveToFile("D:\template_sum.docx", FileFormat.Docx_2013);}}

java方法2_POI

优点:导包方便

缺点:代码量比第一个多

参考:Easypoi实现单模板生成多页word文档 - zeng1994 - 博客园   【含图片】

下列代码适用于无图片的word,含图片格式看参考推荐

/*** @author ymyx* @version V1.0* @date 2024/3/8 13:45*/
public class Test {public static void main(String[] args) throws Exception {//获取第一个文档的路径String filePath1 = "D:\\template_01.docx";//获取第二个文档的路径String filePath2 = "D:\\template_02.docx";//加载第一个文档XWPFDocument d1 = new XWPFDocument (new FileInputStream(filePath1));XWPFDocument d2 = new XWPFDocument (new FileInputStream(filePath2));
//        d1.createParagraph().setPageBreak(true);  本想分页符,结果第二页后仍有,去掉暂时没问题appendBody(d1, d2);//保存文档// 3.将合并后的word文档输出到文件FileOutputStream fos = new FileOutputStream("D:\\template_sum.docx");d1.write(fos);fos.close();}private static void appendBody(XWPFDocument src, XWPFDocument append) throws Exception {CTBody src1 = src.getDocument().getBody();CTBody append2 = append.getDocument().getBody();XmlOptions optionsOuter = new XmlOptions();optionsOuter.setSaveOuter();String appendString = append2.xmlText(optionsOuter);String srcString = src1.xmlText();String prefix = srcString.substring(0,srcString.indexOf(">")+1);String mainPart = srcString.substring(srcString.indexOf(">")+1,srcString.lastIndexOf("<"));String sufix = srcString.substring( srcString.lastIndexOf("<") );String addPart = appendString.substring(appendString.indexOf(">") + 1, appendString.lastIndexOf("<"));//将两个文档的xml内容进行拼接CTBody makeBody = CTBody.Factory.parse(prefix+mainPart+addPart+sufix);src1.set(makeBody);}
}

效果图:

图1

图2

合并后

未尝试文章方法:

Java实现合并两个word文档内容_java_脚本之家

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com