彩票走势图

电子邮件处理类库Aspose.Email功能教程:使用Java以编程方式阅读电子邮件

翻译|使用教程|编辑:李显亮|2021-04-13 10:49:13.563|阅读 217 次

概述:在某些情况下,可能需要从应用程序内部读取和解析EML或MSG电子邮件。为了以编程方式做到这一点,本文展示了如何从Java中的电子邮件中提取信息。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

在某些情况下,可能需要从应用程序内部读取和解析EML或MSG电子邮件。为了以编程方式做到这一点,本文展示了如何从Java中的电子邮件中提取信息。特别是,将学习如何阅读电子邮件的主题,主题和标题信息。

为了阅读电子邮件,我们将使用Aspose.Email for java,它是一个功能强大的API,可让您使用Java创建功能丰富的电子邮件客户端。可点击名称进入下载。

整合所有格式的Aspose.Total永久授权火热促销中,立马1分钟了解全部咨询!

使用Java阅读电子邮件

以下是使用Java阅读电子邮件的步骤。

  • 使用MailMessage加载电子邮件文件
  • 使用MailMessage对象读取电子邮件的内容,例如,“收件人”,“发件人”,“主题”,“正文”等。

以下代码示例显示了如何使用Java阅读电子邮件。

// Create MailMessage instance by loading an Eml file
MailMessage message = MailMessage.load("test.eml");

System.out.print("From: ");
// Get the sender info
System.out.println(message.getFrom());
		
System.out.print("To: ");
// Get the recipients info
System.out.println(message.getTo());
		
System.out.print("Subject: ");
// Get the subject
System.out.println(message.getSubject());
		
System.out.print("HtmlBody: ");
// Get the HTML body
System.out.println(message.getHtmlBody());
		
System.out.print("TextBody: ");
// Gets the text body
System.out.println(message.getTextBody());
		
System.out.print("HtmlBodyText: ");
// Gets the text body from HTML
System.out.println(message.getHtmlBodyText());

在Java中将电子邮件正文提取为纯文本

还可以阅读电子邮件并将其正文提取为纯文本而不是HTML。以下是执行此操作的步骤。

  • 使用MailMessage类加载电子邮件文件。
  • 使用MailMessage.getHtmlBodyText(boolean)方法提取电子邮件的正文。

以下代码示例显示了如何在Java中将电子邮件正文提取为纯文本。

// Load email message
MailMessage mail = MailMessage.load("HtmlWithUrlSample.eml");

body_with_url = mail.getHtmlBodyText(true);// body will contain URL
String body_without_url = mail.getHtmlBodyText(false);// body will not contain URL

// Print email message
System.out.println("Body with URL: " + body_with_url);
System.out.println("Body without URL: " + body_without_url);

从Java电子邮件中提取标题信息

Aspose.Email for Java还允许您读取电子邮件的标题信息。以下是执行此操作的步骤。

  • 使用MailMessage类加载电子邮件文件。
  • 使用MailMessage.getHeaders()方法循环浏览电子邮件的标头集合。

以下代码示例显示了如何使用Java读取电子邮件的标头。

// Create MailMessage instance by loading an EML file
MailMessage message = MailMessage.load("test.eml");

// Print out all the headers
System.out.println("Printing all Headers:\n\n");
for (int i=0; i< message.getHeaders().size(); i++) System.out.println(message.getHeaders().get(i)); 

解码Java中的电子邮件标题

您还可以使用以下步骤解码电子邮件标题。

  • 使用MailMessage类加载电子邮件文件。
  • 使用MailMessage.getHeaders().getDecodedValue(String name)方法获取解码后的电子邮件标题的值。

以下代码示例显示了如何在Java中解码电子邮件标头值。

// Load email message
MailMessage mail = MailMessage.load("test.eml");

// Get decoded value from header
String decodedValue = mail.getHeaders().getDecodedValue("Thread-Topic");

// Print the value
System.out.println(decodedValue);

如果你想试用Aspose的全部完整功能,可联系在线客服获取30天临时授权体验。


还想要更多吗?您可以点击阅读【Aspose最新资源在线文库】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP