为了账号安全,请及时绑定邮箱和手机立即绑定

如何从字节数组构造文件以在电子邮件中将文件作为附件发送,而无需将文件或文件路径保存到磁盘?

如何从字节数组构造文件以在电子邮件中将文件作为附件发送,而无需将文件或文件路径保存到磁盘?

慕标琳琳 2022-09-22 15:42:16
在Java中,我有一个字节数组,它通常是来自外部API调用的文件。我需要将此字节数组转换回文件,并将其作为附件在电子邮件中发送,而无需创建实际的文件或引用磁盘中的文件路径。我很乐意进行外部API调用并使用文件附件构建电子邮件。除了我正在创建一个文件,该文件被保存到磁盘,然后通过电子邮件作为附件发送。已尝试使用文件输出流写入文件的常用方法。//Convert Byte Array to Filebyte[] byteArrayFileObj = someProcess();File attachmentFile = new File("FileName.abc");OutputStream os = new FileOutputStream(attachmentFile);os.write(byteArrayFileObj);os.close();//Attach the File as an E-Mail AttachmentMimeMessageHelper helper = new MimeMessageHelper(message, true);helper.addAttachment(attachmentFile.getName(), attachmentFile);我需要发送一封包含文件作为附件的电子邮件,而不将文件保存到磁盘。在我的情况下,它将文件的副本保存到磁盘。谷歌搜索了很多。但是没有答案。提前致谢!
查看完整描述

1 回答

?
MMTTMM

TA贡献1869条经验 获得超4个赞

试试这个:


final InputStreamSource fileStreamSource = new ByteArrayResource(byteArrayFileObj);

helper.addAttachment("Some-file-name", fileStreamSource);


查看完整回答
反对 回复 2022-09-22
  • 1 回答
  • 0 关注
  • 75 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信