如何动态创建pdf文件并使其成为电子邮件附件?

时间:2019-04-02 13:31:08

标签: java spring spring-boot

我发现用于发送带有附件的email的教程是基于已经创建的文件的。但我需要即时创建一个pdf文件并将其附加到电子邮件中。该怎么做?

1 个答案:

答案 0 :(得分:1)

大多数PDF生成器都支持写入OutputStream。一种解决方案是使用FileOutputStream,将PDF保存到磁盘,创建邮件(使用您的教程),发送邮件,删除文件。

另一种选择是使用ByteArrayOutputStream(使用commons-lang3中的一个,因为Java运行时中的一个对于大文件来说非常慢)。使用它来生成“文件”。创建PDF后,使用getByteArray()并将其放入ByteArrayInputStream中,您应该可以将其用作邮件附件。