zoukankan      html  css  js  c++  java
  • Java 合并Word文档

    合并文档可以是将两个包含一定逻辑关系的文档合并成一个完整的文档,也可以是出于方便文档存储、管理的目的合并多个文档为一个文档。下面,就将以上文档操作需求,通过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中的经典算法之冒泡排序(Bubble Sort)
    Appium环境搭建(Windows版)
    Jenkins安装与配置
    Jenkins+ANT+Jmeter 接口测试的实践(转载)
    bugku_web_phpcms1(未完待续)
    bugku_web_Bugku-cms1(未完待续)
    牛客网 PAT 算法历年真题 1010 : 月饼 (25)
    【测试的艺术】+ 封装
    【数据库】+ powerdesigner
    【Git】+IDEA中无法使用git命令
  • 原文地址:https://www.cnblogs.com/Yesi/p/13813450.html
Copyright © 2011-2022 走看看