1. 产品
  2.   电子邮件
  3.   .NET
  4.   MSGReader  

MSGReader  

 
 

用于 Outlook MSG 文件处理的 .NET 库

开源 C# .NET API 用于读取、写入和转换 MS Outlook MSG 和 EML 文件。

MSGReader 是用于读取 Outlook MSG 和 EML 文件的开源 C# .NET 库。它使开发人员无需使用 Microsoft Outlook 即可读取 Outlook MSG 和 EML 文件。完全支持最常见的 Outlook 对象,例如电子邮件、约会、任务、联系人卡片和便笺。还支持 MSG 文件中的所有正文类型,例如文本、HTML、嵌入到 RTF 和 RTF 中的 HTML。

在 MSGReader 中有几个可用于操作 MSG 文件的选项。它允许开发人员从电子邮件中删除附件;他们还可以将文件保存到新文件。

在 MSGReader 中有几个可用于操作 MSG 文件的选项。它允许开发人员从电子邮件中删除附件;他们还可以将文件保存到新文件。 

Previous Next

MSGReader 入门

安装 MSGReader 的最简单方法是通过 NuGet。要从 Visual Studio 的包管理器控制台使用它,请输入以下命令。

这是命令

 Install-Package MSGReader 

从基于 COM 的语言(如 VB 脚本或 VB6)中使用 MSGReader。

首先,您需要下载最新版本,然后打开 MSGReader 项目,将平台目标设置为 X86,然后以发布模式构建代码,从 BuildOutput 文件夹中获取“MsgReader.dll”文件并将文件复制到所需位置。之后使用以下命令为 COM 互操作注册文件。

使用 .NET 读取和保存 Outlook MSG 邮件附件

MSGReader 使 C# 开发人员能够访问电子邮件及其 Outlook MSG 和 EML 文件的附件。它支持读取 Outlook MSG 文件并将邮件正文及其所有附件保存到输出文件夹。

读取味精数据 - C#

// Read a email .msg file
Message message = new MsgReader.Outlook.Storage.Message("fileformat.msg");
// Read sender
Console.WriteLine("Sender:" + message.Sender);
// Read sent on
Console.WriteLine("SentOn:" + message.SentOn);
// Read recipient to
Console.WriteLine("recipientsTo:" + message.GetEmailRecipients(MsgReader.Outlook.RecipientType.To, false, false));
// Read recipient cc
Console.WriteLine("recipientsCc:" + message.GetEmailRecipients(MsgReader.Outlook.RecipientType.Cc, false, false));
// Read subject
Console.WriteLine("subject:" + message.Subject);
// Read body html
Console.WriteLine("htmlBody:" + message.BodyHtml);

使用 .NET API 将 Outlook MSG 转换为文本文件

MSGReader API 提供了使用 .NET API 将 Outlook MSG 保存为文本文件的功能。开发人员可以轻松访问 MSG 文件内容。创建保存文件对话框的实例并将消息保存为 TXT 文件格式。

将 Outlook 电子邮件另存为文本 - C#


var fileName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, 
  "suggestion.msg");
using (var msg = new MsgReader.Outlook.Storage.Message(fileName))
{
  var sb = new StringBuilder();
  var from = msg.Sender;
  var sentOn = msg.SentOn;
  var recipientsTo = msg.GetEmailRecipients(
    MsgReader.Outlook.Storage.Recipient.RecipientType.To, false, false);
  var recipientsCc = msg.GetEmailRecipients(
    MsgReader.Outlook.Storage.Recipient.RecipientType.Cc, false, false);
  var recipientsBCC = msg.GetEmailRecipients(
    MsgReader.Outlook.Storage.Recipient.RecipientType.Bcc, false, false);
  var subject = msg.Subject;
  sb.AppendLine($"  From: {from.DisplayName} {from.Email}");
  sb.AppendLine($"  Sent: {sentOn.Value}");
  sb.AppendLine($"   To: {recipientsTo}");
  sb.AppendLine($"   CC: {recipientsCc}");
  sb.AppendLine($"  BCC: {recipientsBCC}");
  sb.AppendLine($"Subject: {subject}");
  sb.AppendLine($"  Body:");
  sb.AppendLine(msg.BodyText);
  File.WriteAllText(Path.Combine(
    AppDomain.CurrentDomain.BaseDirectory, "suggestion.txt"), 
    sb.ToString());
}
 中国人