在 Web 应用程序中显示 .eml 文件

发布于 2024-09-13 20:26:57 字数 174 浏览 9 评论 0原文

我有一个 Web 应用程序,需要向用户显示 .eml 文件(RFC 822 格式),格式正确为电子邮件 - 正确显示 HTML 到文本正文,显示图像、附件等。您知道可以执行这些操作的组件/库吗?

我更喜欢用 Java 编写(并且可以轻松地与 spring 集成:-)),但在 Apache 上运行的任何其他实现也可以。

I have a web application where I need to display .eml files (in RFC 822 format) to the users, formatted properly as e-mail - show the HTML to text body properly, show images, attachments and so on. Do you know of a component / library that can do those things?

I prefer it would be in Java (and to integrate with spring easily :-) ), but any other implementation which runs on Apache is fine as well.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

十六岁半 2024-09-20 20:26:57

您可以将 .eml 转换为 javax.mail.Messages mailMessage 如下:

加载 .eml 文件转换为 javax.mail.Messages

然后您可以使用此库在 MessageBean 中进行转换:

http://javaclue.blogspot.com/2009/09/portable-java-mail-message-bean_02.html

MessageBean mb = MessageBeanUtil.mimeToBean(mailMessage);

You could convert .eml into javax.mail.Messages mailMessage as:

Loading .eml files into javax.mail.Messages

then you could use this library to convert in MessageBean:

http://javaclue.blogspot.com/2009/09/portable-java-mail-message-bean_02.html

MessageBean mb = MessageBeanUtil.mimeToBean(mailMessage);

恬淡成诗 2024-09-20 20:26:57

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());
    }
}

Javamail can read EML file.

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());
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文