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

poi 同时被 2 个专栏收录
4 篇文章 0 订阅
4 篇文章 0 订阅

最近项目上经常操作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,确实比之前的操作要快,合并得也要快,太好用了!

  • 0
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值