在各种情况下可能需要合并多个 MS Word 文档,例如减少文档数量、将相似类型的内容保存在一个文件中(即发票)等。许多在线应用程序允许您合并两个或多个 MS Word 文档但是,您可能需要在自己的 Web 或桌面应用程序中实现文档合并功能。对于这种情况,在本文中,您将学习如何使用 Java 合并 MS Word DOCX 文档。

一、使用 Java API 合并 Word 文档

Aspose.Words for Java是一种流行的文字处理 API,可让您在 Java 应用程序中创建、操作和使用 MS Word 文档格式。除了广泛的文档生成功能外,API 还允许您非常轻松地合并 MS Word 文档。您可以下载API 或使用以下 Maven 配置安装它。

<repository> <id>AsposeJavaAPI</id> <name>Aspose Java API</name> <url>https://repository.aspose.com/repo/</url> </repository>

<dependency> <groupId>com.aspose</groupId> <artifactId>aspose-words</artifactId> <version>20.8</version> <type>pom</type> </dependency>

二、使用 Java 合并 MS Word DOCX 文档

使用 Aspose.Words for Java 合并 MS Word 文档非常简单。只需加载文档并通过调用单个方法合并它们。以下是您将在以下代码示例中合并的两个 MS Word 文档。

Java aspose word读取doc文件报错 aspose.words java_java

以下是合并两个 MS Word 文档的步骤。

  • 使用Document类加载目标 Word 文档。
  • 使用Document类加载源 Word 文档。
  • 使用Document.appendDocument(Document, ImportFormatMode)方法将源 Word 文档合并到目标文档中。
  • 在appendDocument方法中设置ImportFormatMode以指定源文档的格式。
  • 使用Document.save(String, SaveFormat)方法保存目标 Word 文档。

以下代码示例显示了如何使用 Java 合并 MS Word 文档 (DOCX)。

// Load Word documents to be merged Document doc1 = new Document("sample1.docx"); Document doc2 = new Document("sample4.docx"); // Merge documents keeping source file's formatting doc1.appendDocument(doc2, ImportFormatMode.KEEP_SOURCE_FORMATTING); // Save merged document as DOCX file doc1.save("merged.docx", SaveFormat.DOCX);

以下是合并后的 MS Word 文档的屏幕截图。

Java aspose word读取doc文件报错 aspose.words java_word_02

三、使用其他选项合并 MS Word DOCX

Aspose.Words for Java 还提供了一些额外的选项来自定义执行合并后源文档的外观。ImportFormatOptions类提供以下自定义选项。

  • setIgnoreHeaderFooter(布尔值)——指定如果使用ImportFormatMode.KEEP_SOURCE_FORMATTING模式,则忽略页眉/页脚内容的源格式。
  • setIgnoreTextBoxes(布尔值)——指定如果使用ImportFormatMode.KEEP_SOURCE_FORMATTING模式,则忽略文本框内容的源格式。
  • setKeepSourceNumbering(布尔值)——指定在源文档和目标文档中发生冲突时如何导入编号。
  • setSmartStyleBehavior(布尔值)——指定在源文档和目标文档中具有相似名称时如何导入样式。

以下是使用附加选项合并两个 MS Word 文档的步骤。

  • 使用Document类加载目标 Word 文档。
  • 使用Document类加载源 Word 文档。
  • 创建ImportFormatOptions类的实例并设置所需的选项。
  • 使用Document.appendDocument(Document, ImportFormatMode, ImportFormatOptions)方法将源 Word 文档合并到目标文档中。
  • 使用Document.save(String, SaveFormat)方法保存目标 Word 文档。

以下代码示例显示了如何使用 Java 合并两个带有附加选项的 MS Word 文档。

// Load Word documents to be merged Document doc1 = new Document("sample1.docx"); Document doc2 = new Document("sample4.docx"); // Set options ImportFormatOptions options = new ImportFormatOptions(); options.setIgnoreHeaderFooter(true); //options.setIgnoreTextBoxes(true); //options.setKeepSourceNumbering(true); //options.setSmartStyleBehavior(true); // Merge documents keeping destination file's styles doc1.appendDocument(doc2, ImportFormatMode.USE_DESTINATION_STYLES, options); // Save merged document as DOCX file doc1.save("merged-customized.docx", SaveFormat.DOCX);