我有原始的mime消息,其中包含html内容,内嵌图像和附件。
我想解析并在html页面中显示内容,就像邮件客户端正在显示一样。
是否有可用于解析原始mime内容的java库或方法?
答案 0 :(得分:3)
您需要阅读该文件,然后创建一个MimeMessage:
// read the file
StringBuffer fileData = new StringBuffer(1000);
BufferedReader reader = new BufferedReader(new FileReader(new File(/*PATH*/)));
char[] buf = new char[1024];
int numRead = 0;
while ((numRead = reader.read(buf)) != -1) {
fileData.append(buf, 0, numRead);
}
reader.close();
// Create a MimeMessage
Properties props = System.getProperties();
Session session = Session.getInstance(props, null);
MimeMessage message = new MimeMessage(session, new ByteArrayInputStream(fileData.toString().getBytes()));
现在您有了一个mime消息,您可以使用以下方式访问其内容:
message.getContent();
内容类型取决于mime类型(可以是String,Multipart对象......)
以下是MimeMessage的JavaDoc。