如何从Java中的MimeMessage电子邮件中检索正文

时间:2015-01-29 19:39:53

标签: java email message mime

我正在尝试获取MIMEMessage的正文内容。该电子邮件本质上是一个保存为文本文件的.EML文件。然后,下面的代码将其转换为MIMEMessage

        InputStream mailFileInputStream = new FileInputStream(emailFile);
        Properties props = new Properties();
        Session session = Session.getDefaultInstance(props, null);
        MimeMessage message = new MimeMessage(session, mailFileInputStream);

然而,当我尝试使用MimeMessageParser解析并获取单独的部分时,我可以获得除html内容之外的所有内容,并使用以下代码:

        MimeMessageParser parser = new MimeMessageParser(message);
        String from = parser.getFrom();
        List<Address> to = parser.getTo();
        List<Address> cc = parser.getCc();
        List<Address> bcc = parser.getBcc();
        String subject = parser.getSubject();
        String htmlContent = parser.getHtmlContent(); // Doesnt work

我是否错过了解析中的一个步骤,或者是否有更简单的方法来检索正文?

1 个答案:

答案 0 :(得分:2)

我发现了解决方案。您必须首先使用以下行解析解析器:

parser.parse().getHtmlContent();

这将检索电子邮件的头部和正文。有用的来源是隐藏在互联网深处的日本网站:) http://www.cnblogs.com/jiaoyiping/p/3761560.html