在Java中创建一个.eml(电子邮件)文件
时间:2020-03-06 14:58:20 来源:igfitidea点击:
有人知道该怎么做吗?我收到了电子邮件的所有信息(正文,主题,从,到,抄送,密件抄送),并且需要从中生成一个.eml文件。
解决方案
EML文件只是纯文本文件。标题与主体之间用空白行分隔。标头如下所示:
From: "DR CLEMENT OKON" <[email protected]> To: "You" <[email protected]> Subject: REQUEST FOR URGENT BUSINESS RELATIONSHIP Date: Tue, 30 Sep 2008 09:42:47 -0400
有关更多信息,官方规范是RFC2822. 实际上,它不像某些RFC那样难读。
编辑:当我说"纯文本"时,我应该考虑一秒钟。我真正的意思是普通的ASCII而不是8位的"扩展ASCII"(最多可扩展到127个字符)。如果要超过7位,则需要某种编码,并且事情会变得复杂。
查看一个典型的EML文件,它看起来像是发送到服务器的文本通信的原始转储。因此,这是一个包含邮件头和正文的文本文件。为了以正确的格式在EML文件中获取附件,不同的视图等,我们需要对主体及其部分进行MIME编码。
我们可以构造javax.mail.Message
对象(或者已经从邮件服务器构造它),然后可以使用writeTo()
方法将其保存到文件中。
有关更多信息,请参见JavaMail API。