繁体   English   中英

如何使用JavaMail将文件附加到电子邮件

[英]How to attach a file to an email using JavaMail

我需要使用JavaMail发送PDF文件。 PDF目前是一个字节[]。 如何将其导入DataSource?

byte[] pdffile = ....

messageBodyPart = new MimeBodyPart();

DataSource source = ???

messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(filename);

multipart.addBodyPart(messageBodyPart);

使用javax.mail.util.ByteArrayDataSource

DataSource source = new ByteArrayDataSource(pdffile, "application/pdf");

您可能知道,如果PDF在文件系统上,则FileDataSource会更容易:

DataSource source = new FileDataSource(pdfpath);

jheddings的答案对我来说似乎是正确的,但我还要补充一点,如果你在应用程序中使用Spring框架,你可以利用Spring MimeMessageHelper,它包含一个很好的addAttachment()方法(并且使得其余的消息创建也更容易)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM