彩票走势图

借助Aspose.Email控件,处理 5 种存储文件格式

翻译|行业资讯|编辑:胡涛|2024-02-21 09:49:52.790|阅读 9 次

概述:在本文中,我们将深入研究每种格式,并演示如何利用 Aspose.Email 提取、列出和检索五种主要文件格式的电子邮件内容,欢迎查阅

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

相关链接:

各种各样的电子邮件客户端和平台通常会导致创建各种电子邮件存储格式。一方面,这些格式在解析内容时可能会带来挑战。另一方面,在存储数据或在 Web 服务出现故障时恢复数据时,它们是不可或缺的。在本文中,我们将深入研究每种格式,并演示如何利用 Aspose.Email 提取、列出和检索五种主要文件格式的电子邮件内容。

电子邮件退回和送达通知

Aspose.Email 是用于轻松的开发 email 功能的应用程序的一组控件,基于  ASP.NET 的Web应用、Web服务和Windows 应用。支持 Outlook PST, EML, MSG, and MHT 格式. 允许开发者直接与 SMTP, POP, FTP, 和 MS Exchange 服务器进行工作。支持邮件合并、行事历、定制邮件标题和内容、嵌入文件等,Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

Aspose.Email 最新下载

处理存储文件的 C# API

对于存储文件处理,我们将使用通用 API,旨在简化复杂的电子邮件相关任务和交互,为电子邮件管理提供全面的解决方案。Aspose.Email for .NET使开发人员能够创建与各种格式(如 PST、OST、MBOX、EML、MSG 等)的电子邮件数据无缝交互的应用程序。凭借其丰富的功能集和用户友好的方法,存储在文件中的电子邮件数据的操作、提取和管理变得简单直观。要利用 API 的强大功能,请下载其 DLL 或使用以下命令从NuGet安装它:


PM> Install-Package Aspose.Email


处理各种类型的存储文件格式

读取 PST(个人存储表)文件

PST 是 Microsoft Outlook 用于存储电子邮件、联系人、日历和其他数据的文件格式。Aspose.Email 通过提供提取和检索电子邮件、附件和文件夹结构等项目的方法来简化 PST 文件处理。使用该库,开发人员可以以编程方式访问 PST 内容、搜索特定项目并将其导出为各种格式。在包含以下步骤的代码示例中,您将了解如何读取 PST 格式的文件:

  1. 首先,使用PersonalStorage类的FromFile方法加载 pst 文件。
  2. 使用pst 对象的RootFolder属性上的GetSubfolder()方法访问 PST 中的“收件箱”文件夹。
  3. 使用文件夹对象上的EnumerateMessages()方法迭代文件夹中的每条消息。
  4. 使用pst 对象上的ExtractMessage()方法提取消息,并传入每个 msgInfo 对象的EntryIdString属性。
  5. 访问消息内容: 使用msg 对象的Subject属性获取消息的主题。
  6. 使用msg 对象的SenderEmailAddress属性获取消息的发件人地址。
  7. 使用msg 对象的Body属性获取消息的正文。


// Load the PST file
using (var pst = PersonalStorage.FromFile(filename)
{
// Access the desired folder within the PST
var folder = pst.RootFolder.GetSubfolder("Inbox");

// Enumerate and list messages in the folder
foreach(var msgInfo in folder.EnumerateMessages())
{
var msg = pst.ExtractMessage(msgInfo.EntryIdString);

//Access the contents of the message
// Get subject
Console.WriteLine("Subject:" + msg.Subject);

// Get from address
Console.WriteLine("From:" + msg.SenderEmailAddress);

// Get body
Console.WriteLine("Body" + msg.Body);
}
}


读取 OST(Outlook 脱机存储表)文件

OST 文件充当 Microsoft Exchange 邮箱数据的脱机副本。Aspose.Email 能够从 OST 文件中提取数据,允许开发人员检索电子邮件、文件夹和附件。这在创建备份解决方案或在不同平台之间迁移数据时特别有用。用于解析 OST 文件的一组功能与解析 PST 的功能相同,因此您可以使用上面的代码示例来指定 OST 文件的正确路径。

读取 OLM(Outlook for Mac 存档)文件

OLM 是 Microsoft Outlook for Mac 用于存储电子邮件、联系人和其他数据的存储格式。借助 Aspose.Email,开发人员可以从 OLM 文件中提取内容,包括电子邮件和附件。此功能对于跨平台数据迁移或创建备份系统非常有价值。以下代码示例和步骤将向您展示一种利用 API 解析 Outlook for Mac 文件的方法:

  1. 创建OlmStorage类的实例并使用构造函数加载 OLM 文件。
  2. 通过使用olm 对象上的GetFolder()方法访问 OLM 中的“Inbox”文件夹,将文件夹名称作为“Inbox”传递,并指定创建该文件夹(如果该文件夹不存在)。
  3. 使用文件夹对象上的EnumerateMessages()方法迭代文件夹中的每条消息。
  4. 使用olm 对象上的ExtractMapiMessage()方法提取消息,并传入 msgInfo 对象。
  5. 访问消息内容: 使用msg 对象的Subject属性获取消息的主题。
  6. 使用msg 对象的SenderEmailAddress属性获取消息的发件人地址。
  7. 使用msg 对象的Body属性获取消息的正文。


// Load the OLM file
using (var olm = new OlmStorage(filename))
{
// Access the desired folder within the OLM
var folder = olm.GetFolder("Inbox", true);

// Enumerate and list messages in the folder
foreach (var msgInfo in folder.EnumerateMessages())
{
var msg = olm.ExtractMapiMessage(msgInfo);

//Access the contents of the message
// Get subject
Console.WriteLine("Subject:" + msg.Subject);

// Get from address
Console.WriteLine("From:" + msg.SenderEmailAddress);

// Get body
Console.WriteLine("Body" + msg.Body);
}
}


读取MBOX(邮箱)文件

MBOX 是一种广泛使用的用于存储电子邮件的格式。许多电子邮件客户端和平台都支持它。Aspose.Email 能够从 MBOX 文件中提取和检索电子邮件和附件,使开发人员能够以编程方式处理电子邮件数据。尝试以下代码片段来解析 mbox 文件:

  1. 使用MboxStorageReader类的CreateReader()方法和MboxLoadOptions加载 MBOX 文件。
  2. 使用 mbox 对象上的EnumerateMessageInfo()方法迭代 mbox 中的每条消息。
  3. 使用 mbox对象上的ExtractMessage()方法并传入EntryId和EmlLoadOptions ,从 mbox 中提取消息内容。
  4. 访问消息内容: 使用eml 对象的主题属性获取消息的主题。
  5. 使用eml 对象的From属性获取消息的发件人地址。
  6. 使用eml 对象的Body属性获取消息正文。


// Load the MBOX file
using (var mbox = MboxStorageReader.CreateReader(fileName, mboxLoadOptions))
{
// Enumerate and list messages in the folder
foreach (var msgInfo in mbox.EnumerateMessageInfo())
{
var eml = mbox.ExtractMessage(messageInfo.EntryId, emlLoadOptions);

//Access the contents of the message
// Get subject
Console.WriteLine("Subject:" + eml.Subject);

// Get from address
Console.WriteLine("From:" + eml.From);

// Get body
Console.WriteLine("Body" + eml.Body);
}
}


读取 TGZ(压缩 Tar 存档)文件

TGZ 是一种压缩存档格式,通常用于在 Zimbra 电子邮件客户端中存储电子邮件备份数据。Aspose.Email 允许从 TGZ 文件中提取电子邮件内容,从而可以访问和操作这些档案中包含的电子邮件数据。以下代码片段和步骤将向您展示如何读取 tgz 文件:

  1. 创建TgzReader类的实例并使用构造函数加载 TGZ 文件。
  2. 使用文件夹对象上的ReadNextMessage()方法循环访问“收件箱”文件夹中的每个项目。
  3. 使用CurrentMessage属性从每个项目中提取消息内容。
  4. 使用提取的消息内容执行所需的操作。


using (var tgzReader = new TgzReader(fileName))
{
while (reader.ReadNextMessage())
{
if (reader.CurrentDirectory == "Inbox")
{
var eml = reader.CurrentMessage;

//Access the contents of the message
// Get subject
Console.WriteLine("Subject:" + eml.Subject);

// Get from address
Console.WriteLine("From:" + eml.From);

// Get body
Console.WriteLine("Body" + eml.Body);
}
}
}


结论

在本文中,我们探讨了如何在 C# 中以编程方式处理最流行格式的存储文件。我们直观的代码示例向您展示了如何在项目中实现基本功能。现在,使用 Aspose.Email for .NET 可以更轻松地加载、列出和访问存储文件的内容。该 API 为您提供了一种将电子邮件相关功能集成到 .NET 应用程序中的无缝方法。


欢迎下载|体验更多Aspose文档管理产品 

获取更多信息请咨询 或 加入Aspose技术交流群(761297826


标签:

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


为你推荐

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


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP