当你调用javax.mail.Message.getInputStream()时,你会得到什么类型



我正在尝试解析电子邮件,然后将实际电子邮件另存为文件系统中的文件以进行审核,并将其从交换服务器中删除。 (与在Outlook中保存电子邮件的方式相同(

所以要做到这一点,我发现我可以打电话

Message.getInputStream()  

检索文件字节。它的工作正常,我可以将电子邮件作为文件写入文件系统。

我的问题是这个文件类型是什么?是.eml还是.msg?还是别的什么?查看其内容时,我看到的是文本而不是二进制数据

--_004_MWH_#TRUNCATED#_11namp_
Content-Type: multipart/alternative;
boundary="_000_MWHPR_#TRUNCATED#_1711namp_"
--_000_MWHPR10_#TRUNCATED#_HPR10MB1711namp_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64

getInputStream并没有说太多关于数据类型的信息...https://docs.oracle.com/javaee/7/api/javax/mail/Part.html#getInputStream--

对消息使用 getContentType。 Mime 消息映射到 Windows 上的.eml

您需要使用 Message.writeTo 将消息保存到文件中。

相关内容

最新更新