乐趣区

关于java:Java-复制-Word-文档

前言

Microsoft Word 提供了许多易于应用的文档操作工具,同时也提供了丰盛的功能集供创立简单的文档应用。在应用的时候,你可能须要复制一个文档外面的内容到另一个文档。本文介绍应用 Spire.Doc for Java 通过编程的形式来复制 Word 文档的办法,复制的内容可反对包含文本、图片、表格、超链接、书签、批注、形态、编号列表、脚注、尾注等等在内的多种元素。


程序环境

装置 Spire.Doc for Java

首先,您须要在 Java 程序中增加 Spire.Doc.jar 文件作为依赖项。JAR 文件能够从此链接下载。如果您应用 Maven,则能够将以下代码增加到我的项目的 pom.xml 文件中,从而轻松地在应用程序中导入 JAR 文件。

代码示例

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url> https://repo.e-iceblue.cn/repository/maven-public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.doc</artifactId>
        <version>10.9.8</version>
    </dependency>
</dependencies>

留神:下面代码中的版本号要与下载连贯中的版本号保持一致,以体验最新性能或者防止 BUG。

复制 Word 文档

Spire.Doc for Java 提供了应用 Document.add(((DocumentObject) object).deepClone()) 办法将原文本的内容复制到指标文档。

步骤

  • 创立一个 Document 实例和一个指标文档 Document 实例。
  • 应用 Document.loadFromFile() 办法加载示例 Word 文档。
  • 遍历获取要复制的内容。
  • 应用 DocumentObjectCollection.add() 办法将原文本的内容复制到指标文档。
  • DocumentObject.deepClone() 创立文件指标的正本。
  • 应用 saveToFile() 办法保留指标文档。

代码实现

import com.spire.doc.*;

public class CopyDoc {public static void main(String[] args) {
        // 加载文档 1
        Document doc1 = new Document();
        doc1.loadFromFile("input.docx");

        // 加载文档 2
        Document doc2 = new Document();
        doc2.loadFromFile("target.docx");

        // 遍历文档 1 中的所有子对象
        for (int i = 0; i < doc1.getSections().getCount(); i++) {Section section = doc1.getSections().get(i);

            for(int j = 0;j< section.getBody().getChildObjects().getCount();j++)
            {Object object = section.getBody().getChildObjects().get(j);

                // 复制文档 1 中的注释内容增加到文档 2
                doc2.getSections().get(0).getBody().getChildObjects().add(((DocumentObject) object).deepClone());
            }
        }

        // 保存文档 2
        doc2.saveToFile("CopyDoc.docx", FileFormat.Docx_2013);
        doc2.dispose();}
}

比照图

Word 示例文档如下,将右边的文档内容复制到左边的

复制后果如下:

提醒: 该 JAR 包有免费版和商业版之分,免费版有性能和篇幅限度,篇幅很少可放心使用,若要体验残缺性能,能够申请 30 天长期收费 license 应用商业版。

—THE END—

退出移动版