我有一个DOCX文档(也可以使用RTF文档),我想使用Java API进行邮件合并。
我以前在Python中完成了此操作,就像将包含字段名和字段值的JSON对象传递给方法一样简单。总共需要三行:打开,合并,写入。
[我已经找到了一些Java库(例如DOCX4J),看起来您需要完全理解DOCX格式,对于我想在套用信函中插入名称和地址的简单情况来说,这是一种过时的方法。
是否有像Python 3行(打开,合并,写入)解决方案一样简单的免费库? Spire.Doc似乎很合适,除了它会添加水印,除非您支付$ 1,400。
我传入四个参数:一个Word文档文件,一个输出Word路径,一个包含要插入的数据的列表列表以及一个包含合并字段名称的字符串列表。
整个事情都可以使用:
MailMerge mailMerge = MailMerge.MailMergeBuilder.mailMerge()
.withApplicantsList( sortedArrayList.subList( 0 , numberOfApplicants ) )
.withHeaders( headerNamesList )
.withOutputFilePath( outputFilePath )
.withWordTemplate( inputTemplateFile )
.build();
mailMerge.doMerge();