代码先锋网 代码片段及技术文章聚合

利用poi实现多个word之间的合并(包括图片、表格、样式都不丢失)

技术标签: poi  word合并

最近项目上经常操作word,之前一直用的freemarker这个框架,在网上搜寻了大量的资料,都推荐使用poi-tl这个工具来实现,

这里我就自己写了一个demo,亲自测试了一下,这个word合并果然简单靠谱,需要注意的是:

需要使用jdk1.8以上的来进行编译

主要步骤:

1.导入poi-tl包:

<dependency>
            <groupId>com.deepoove</groupId>
            <artifactId>poi-tl</artifactId>
            <version>1.9.1</version>
</dependency>

2.写测试类:

package com.mischen.mapreduce.wordcount;

import com.deepoove.poi.xwpf.NiceXWPFDocument;

import java.io.FileInputStream;
import java.io.FileOutputStream;

/**
 * @ClassName TestMergeWord
 * @Description DOTO
 * @Author mischen
 * @Date 2021/5/13 0013 23:16
 * @Version 1.0
 **/
public class TestMergeWord {
    public static void main(String[] args) throws Exception{
        NiceXWPFDocument main = new NiceXWPFDocument(new FileInputStream("C:\\Users\\Administrator\\Desktop\\PMP\\pmp记忆知识点.docx"));

        NiceXWPFDocument sub = new NiceXWPFDocument(new FileInputStream("C:\\Users\\Administrator\\Desktop\\PMP\\zookpeer.docx"));

        NiceXWPFDocument design = new NiceXWPFDocument(new FileInputStream("C:\\Users\\Administrator\\Desktop\\PMP\\设计模式.docx"));

        // 合并两个文档
        NiceXWPFDocument newDoc = main.merge(sub).merge(design);
        // 生成新文档
        FileOutputStream out = new FileOutputStream("C:\\Users\\Administrator\\Desktop\\PMP\\new_doc.docx");
        newDoc.write(out);
        newDoc.close();
        out.close();
        System.out.println("合并word成功!");
    }
}

没有想到的是1.9.1的版本这么强大,简单的就把几个word合并成了一个最终的word,确实比之前的操作要快,合并得也要快,太好用了!

版权声明:本文为miachen520原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/miachen520/article/details/116771337

智能推荐

Java POI合并多个word文件

对于多个docx文件,可以使用POI合并生成一个组合的docx文件,这个方法分享给大家。不过对于docx文件中存在有图片的文档,此种方法没有做处理,需要的朋友可以自己扩展一下。  ...

利用python批量合并excel和word内的表格

1.依赖: python 3.9.7,python-docx==0.8.11,pandas==1.3.4 ,os 2.配置环境 3.引入包 4.定义读取功能函数,注意:本教程只支持读取拓展名为docx的word文档,对于doc的暂不支持 5.定义合并功能函数 6.运行 7.其他 程序可以完善,加入判断空行等...

java poi生成word 插入表格,图片,自动合并单元格,并且可以在已存在的word上追加

poi版本选3.10以上的 要不然插入图片 word会打不开   我下面代码中imgurl是base64编码,让后转的图片,你们使用的话,直接替换成图片路径地址就可以了 headList参数表示表格头部需要合并的集合,如果相邻左右或者上下位置的内容相同,就会自动合并单元格 dataList参数表示表格下方的数据集合,会根据headList中第一行的长度进行自动换行,传入&nbs...

利用POI实现word导出

 记录一下利用POI导出简单word过程,有合并单元格和设置单元格居中,这里的设置单元格居中,是遍历每一个单元格,都设置成居中...

猜你喜欢

利用Spire实现对Word模板的指定文字替换(文字、图片、表格)

1.安装Spire.Office word文件内对要替换的地方用   [=xxx] 做标记 2.WordUtil.cs 3.WordReplace.cs 4.调用示例...

poi操作word,写入一个图片,并且设置其大小,以及图片和base64之间的互相转换,以及表格内容替换和插入

一:word处理图片功能,插入一张图片,并且设置大小,然后添加一段文字,测试图片和文字之间的换行效果: 上文中用到的工具类: 二:word表格字段替换和插入功能示例: 此处用的工具类:...