将PDF附加到电子邮件

问题描述:

我想要做的是将一个或多个PDF附加到电子邮件。 我目前使用MimeMessage发送完美无瑕的电子邮件。但问题是我不知道如何附加文件。 (更具体地说,我使用itext创建的PDF)。将PDF附加到电子邮件

任何示例或提示都被赞赏!

reading(“如何创建一个内存中的PDF报告,并发送作为利用iText和Java电子邮件附件”)可以帮助你

+0

http://pdfbox.apache.org/的Apache的Java PDF库。 – blob 2011-01-31 10:02:12

+0

@blob,请解释一下...文章是关于iText,以及问题(至少它被标记为iText)。 PDFBox是iText的替代品,但它如何解决附加问题? – Maxym 2011-01-31 10:10:01

创建于MimeMessage附件(见的javadoc),设置内容键入"application/pdf",获取它的内容OutputStream并将PDF的字节写入它(使用Apache的commons-io IOUtils)。

您可以使用名为Commons Email的着名Apache Jakart库。

如果你的电子邮件是HTML格式,您可以使用此代码:

HtmlEmail email = new HtmlEmail(); 
email.setSubject("<your subject>"); 
email.setHtmlMsg("<your html message body>"); 
email.setHostName("<host>"); 
email.setFrom("<from_address>"); 
email.addTo("<recipient_address>"); 
email.send(); 

,然后附上您的PDF文件

EmailAttachment attachment = new EmailAttachment(); 

String filePath = "pathtofile"; 
attachment.setPath(filePath); 
attachment.setDisposition(EmailAttachment.ATTACHMENT); 
attachment.setDescription("description for this attachment"); 

email.attach(attachment); 

否则,你应该使用MultiPartEmail类。

希望可以帮助...