我有一个Web应用程序,我需要显示.eml文件(在RFC 822格式)的用户,格式正确的电子邮件-显示HTML文本正文正确,显示图像,附件等。你知道一个组件/库可以做这些事情吗?我更喜欢用Java实现(并且可以很容易地与spring集成:-)),但是任何其他在Apache上运行的实现也是可以的。
xcitsw881#
您可以将.eml转换为javax.mail.Messages mailMessage:Loading .eml files into javax.mail.Messages然后你可以使用这个库在MessageBean中进行转换:http://javaclue.blogspot.com/2009/09/portable-java-mail-message-bean_02.htmlMessageBean mb = MessageBeanUtil.mimeToBean(mailMessage);
af7jpaap2#
锁定,本次有disputes about this answer’s content正在解析。它目前不接受新的交互。
Javamail可以读取EML文件。
import java.util.*; import java.io.*; import javax.mail.*; import javax.mail.internet.*; public class ReadEmail { public static void main(String args[]) throws Exception{ display(new File("C:\\temp\\message.eml")); } public static void display(File emlFile) throws Exception{ Properties props = System.getProperties(); props.put("mail.host", "smtp.dummydomain.com"); props.put("mail.transport.protocol", "smtp"); Session mailSession = Session.getDefaultInstance(props, null); InputStream source = new FileInputStream(emlFile); MimeMessage message = new MimeMessage(mailSession, source); System.out.println("Subject : " + message.getSubject()); System.out.println("From : " + message.getFrom()[0]); System.out.println("--------------"); System.out.println("Body : " + message.getContent()); } }
2条答案
按热度按时间xcitsw881#
您可以将.eml转换为javax.mail.Messages mailMessage:
Loading .eml files into javax.mail.Messages
然后你可以使用这个库在MessageBean中进行转换:
http://javaclue.blogspot.com/2009/09/portable-java-mail-message-bean_02.html
MessageBean mb = MessageBeanUtil.mimeToBean(mailMessage);
af7jpaap2#
锁定,本次有disputes about this answer’s content正在解析。它目前不接受新的交互。
Javamail可以读取EML文件。