在 Aspose.Words for Java 中使用 XML 数据

在 Aspose.Words for Java 中使用 XML 数据简介

在本指南中,我们将探讨如何使用 Aspose.Words for Java 处理 XML 数据。您将学习如何执行邮件合并操作,包括嵌套邮件合并,以及如何将 Mustache 语法与数据集结合使用。我们将提供分步说明和源代码示例来帮助您入门。

先决条件

在我们开始之前,请确保您具备以下先决条件:

  • Aspose.Words for Java安装。
  • 客户、订单和供应商的示例 XML 数据文件。
  • 邮件合并目标的示例 Word 文档。

邮件与 XML 数据合并

1. 基本邮件合并

要使用 XML 数据执行基本邮件合并,请按照下列步骤操作:

DataSet customersDs = new DataSet();
customersDs.readXml("Your Directory Path" + "Mail merge data - Customers.xml");
Document doc = new Document("Your Directory Path" + "Mail merge destinations - Registration complete.docx");
doc.getMailMerge().execute(customersDs.getTables().get("Customer"));
doc.save("Your Directory Path" + "BasicMailMerge.docx");

2. 嵌套邮件合并

对于嵌套邮件合并,请使用以下代码:

DataSet pizzaDs = new DataSet();
pizzaDs.readXml("Your Directory Path" + "Mail merge data - Orders.xml");
Document doc = new Document("Your Directory Path" + "Mail merge destinations - Invoice.docx");
doc.getMailMerge().setTrimWhitespaces(false);
doc.getMailMerge().executeWithRegions(pizzaDs);
doc.save("Your Directory Path" + "NestedMailMerge.docx");

使用数据集的 Mustache 语法

要将 Mustache 语法与数据集结合使用,请执行以下步骤:

DataSet ds = new DataSet();
ds.readXml("Your Directory Path" + "Mail merge data - Vendors.xml");
Document doc = new Document("Your Directory Path" + "Mail merge destinations - Vendor.docx");
doc.getMailMerge().setUseNonMergeFields(true);
doc.getMailMerge().executeWithRegions(ds);
doc.save("Your Directory Path" + "MustacheSyntaxUsingDataSet.docx");

结论

在本综合指南中,我们探讨了如何通过 Aspose.Words for Java 有效使用 XML 数据。您已经了解了如何执行各种邮件合并操作,包括基本邮件合并、嵌套邮件合并以及如何将 Mustache 语法与数据集结合使用。这些技术使您能够轻松自动生成文档并进行自定义。

常见问题解答

如何准备用于邮件合并的 XML 数据?

确保您的 XML 数据遵循所需的结构,并定义了表和关系,如提供的示例中所示。

我可以自定义邮件合并值的修剪行为吗?

是的,您可以控制在邮件合并期间是否修剪前导和尾随空格,方法是使用doc.getMailMerge().setTrimWhitespaces(false).

Mustache 语法是什么?什么时候应该使用它?

Mustache 语法允许您以更灵活的方式设置邮件合并字段的格式。使用doc.getMailMerge().setUseNonMergeFields(true)启用 Mustache 语法。