【发布时间】:2018-01-11 14:42:48
【问题描述】:
我正在尝试使用以下 java 代码从 Outlook 读取电子邮件正文。如果电子邮件包含表格,我如何正确阅读? 使用的代码是
// Methods to get Email message content.
private String getTextFromMessage(Message message) throws Exception {
String result = "";
if (message.isMimeType("text/plain")) {
result = message.getContent().toString();
} else if (message.isMimeType("multipart/*")) {
MimeMultipart mimeMultipart = (MimeMultipart)message.getContent();
result = getTextFromMimeMultipart(mimeMultipart);
}
result = removeHyperTextContent(result);
return result;
}
private String getTextFromMimeMultipart(MimeMultipart mimeMultipart) throws Exception
{
String result = "";
int count = mimeMultipart.getCount();
for (int i = 0; i < count; i++) {
BodyPart bodyPart = mimeMultipart.getBodyPart(i);
if (bodyPart.isMimeType("text/plain")) {
result = result + "\n" + bodyPart. getContent();
break; }
if (bodyPart.isMimeType("text/html")) {
String html = (String)bodyPart.getContent();
result = result + "\n" + html;
} else if ((bodyPart.getContent() instanceof MimeMultipart)) {
result = result + getTextFromMimeMultipart((MimeMultipart)bodyPart.getContent());
break; //This is added to break after recursive call, otherwise it fetches the content from next MultiPart.
}
}
result = removeHyperTextContent(result);
return result;
}
【问题讨论】:
-
问题中不清楚您正在寻找什么输出。看起来您正在获得表格的确切输出。如果您将电子邮件作为字符串输出,那就太好了。
-
。感谢您的回复。我想在浏览器上向用户显示整个消息。我怎样才能做到这一点?提前谢谢..
标签: java email jakarta-mail mime-types