我已经将单个消息作为.eml文件存储在我的磁盘上。当需要将它们从磁盘中读出并读入内存时,我在恢复电子邮件的正文(文本)时遇到问题。这是读取 .eml 文件的代码
String filePath = "filepath\msg0.eml";
InputStream is = new FileInputStream(filePath);
MimeMessage mime = new MimeMessage(null, is);
有趣的是 - 我可以打印出有关电子邮件的各种内容,它来自谁,主题行,接收时间,抄送,密件抄送等。我只是无法访问电子邮件内容。我应该在哪里看到正文文本,而不是有一个内存地址(下面)
content type: multipart/alternative; boundary="00032555717a714a1504a378be8e"
所以有什么帮助吗?我忘记了像演员表这样简单的事情吗?除了 MimeMessage 格式之外,我还尝试打印来自多部分和消息的内容。感谢您的投入,谢谢!
使用 JavaMail 附带的 msgshow.java 演示程序在文件中显示消息。 使用 -m 选项。 如果它没有显示您的期望,则文件格式错误,您应该查看将消息存储在文件中的程序。
如果您仍然遇到问题,我们将需要更多详细信息来帮助您找出问题所在。