1. Продукти
  2.   Aspose.Email
  3.   Aspose.Email FOSS for .NET

Aspose.Email FOSS for .NET

Четете, създавайте и обработвайте Outlook MSG файлове, CFB контейнери и EML съобщения от .NET — безплатен и с отворен код, без зависимост от Microsoft Outlook.

Open-Source .NET библиотека за MSG, CFB и EML файлове

Aspose.Email FOSS за .NET е MIT лицензирана, без зависимости C# библиотека за работа с Microsoft Outlook .msg файлове, Compound File Binary (CFB) контейнери и EML съобщения. Добавете един единствен NuGet пакет и веднага започнете да четете, създавате и обработвате имейл съобщения без инсталиране на Microsoft Outlook или какъвто и да е собственически runtime.

Библиотеката предоставя два нива на достъп. На ниско ниво, CfbReader и CfbWriter дават пълен контрол върху CFB бинарните контейнери — обхождане на директориите, четене и запис на съхранителни възли и данни от потоци, и преглед на суровата подредба на секторите. MsgReader и MsgWriter обработват формата MSG върху CFB, като излагат MAPI потоци на свойства, таблици на получателите и под‑съхранения за прикачени файлове. На високо ниво, MapiMessage ви позволява да създавате нови съобщения от нулата, да четете тема, тяло, подател и получатели, да управлявате прикачени файлове и да конвертирате между формати MSG и EML чрез вградена MIME имплементация.

Библиотеката цели .NET 8.0 или по‑нов и няма родни зависимости, което я прави подходяща за Windows, Linux, macOS, Docker контейнери и сървърлес функции. За допълнителни функции и комерсиална поддръжка, вижте Aspose.Email for .NET.

CFB контейнер за четене и писане

  • ** Отворете CFB файлове:** Заредете съществуващи контейнери на CF B от пътека за файл, поток или байт масив чрез CfbReader.FromFile(), CfbReader.FromStream() или new CfbReader(data).
  • ** Преминаване през дървото на директорията:** Итерации, потоци и деца с помощта на IterStorages(), IterStreams(),IterChildren() и IterTree().
  • Решение на пътеки: Навигация в иерархията на съхранението с ResolvePath(names) за намиране на конкретен поток чрез веригата от имена.
  • ** Напишете CFB контейнери:** Създавайте CF B документи програмирано с CfbDocument и сериализирайте в байтове или файл чрез CfbWriter.ToBytes() или CfbWriter.WriteFile().
  • ** Добавяне на съхранение и потоци:** Прикрепете CfbStorage и CfbStream възли към всеки възел за съхраняване преди сериализация.

Къде се използва CFB Access

  • ** Инспекция на MSG файлове:** CFB е форматът за Outlook .msg файловете пряк достъп до CF B позволява криминалистическа инспекция и ремонт.
  • Крайни двоични формати: Всяко старо приложение, използващо CFB за съхранение на данни може да се чете или пише без COM зависимост.
  • Възстановяване на данни: Преминаване през цялото дърво директория и извличане на сурови поточни байтове от повредени или нестандартни CFB файлове.
  • Бинарно тестване с обратен път: Сериализирайте документ до байтове и го презареждайте, за да проверите сериализацията без загуби при автоматизирани тестове.

MSG файл Четете и пишете

  • Прочетете MSG файлове: Отворете Outlook MS G файловете с MsgReader.FromFile() или MsgReader.FromStream() и достъп до основните потоци на свойствата MAPI, записите на получателите и под-пазителности за приложения.
  • Напишете MSG файлове: Произведете MS G файловете от MsgDocument с MsgWriter.ToBytes() или MsgWriter.WriteFile().
  • ** Достъп на MAPI от ниско ниво:** Прочетете потоци с свойства от най-високо равнище, наименовани свойствата и данни за прикрепване чрез MsgStorage, MsgStream и MsgStorage.FindStream().
  • Навигация за MSG съхранение: Използвайте MsgStorage.FindStream() и MsgStorage.FindStorage(), за да намерите наименовани подвписвания.

Къде се използва преработката на MSG

  • Архивирани електронни писма: Масово четене .msg файлове от архивни директории и извличане на метаданни или приложения.
  • Уреди за миграция: Преобразуване на колекции от MSG в стандартни формати за импортиране в системи, които не са Outlook.
  • Правова констатация: Проанализирайте суровите потоци на свойства MAPI, за да извлечете всички полета с съобщения, включително нестандартни свойствата.
  • Автоматизирано предаване на доклади: Създаване .msg файлове програмно и доставяне им към Outlook базирани пощенски системи.

API за съобщения на високо ниво

  • Създаване на съобщения: Създайте пълен имейл с MapiMessage.Create(subject, body), задайте SenderName, SenderEmailAddress и HtmlBody.
  • Добавяне на получатели: Прикрепете получателите To, Cc и Bcc чрез AddRecipient() с имейл адрес и име за показване.
  • Управление на прикачени файлове: Добавете файлови и потокови прикачени файлове с AddAttachment() или създайте обекти MapiAttachment директно с Filename, MimeType, ContentId и Data.
  • Запис и презареждане: Сериализирайте с message.Save() или message.Save(stream) и презаредете с MapiMessage.FromFile() или MapiMessage.FromStream().

Къде се използва API на високо ниво

  • Автоматизирано генериране на имейли: Създаване на хиляди персонализирани MSG файлове от данни в партидни задачи.
  • Създаване на тестови фикси: Изграждане на известни добри MSG файлове с предвидимо съдържание за интеграционни тестови комплекти.
  • Извличане на прикачени файлове: Зареждане на MSG файл, итериране message.Attachments, и запазване на всеки attachment.Data на диск.
  • Преглед на свойства: Достъп до message.Subject, message.Body, message.SenderEmailAddress и message.Recipients без COM автоматизация.

EML и MIME преобразуване

  • Зареждане на EML в MapiMessage: Разглеждане на стандартен файл .eml (RFC 5322 / MIME) в пълен обект MapiMessage чрез MapiMessage.LoadFromEml(stream).
  • Спаси MapiMessage като EML: Сериализирайте MapiMessage обратно в формат MIME с message.SaveToEml() или message.SaveToEml(stream).
  • Врътно пътуване: Предметът, тялото, HTML-телото, изпращача, получателя и приложенията се запазват чрез EML → MSG → EM L кръстови пътувания.
  • Няма външен MIME парсер: EML-парсирането се прилага в библиотеката не е необходима зависимост от System.Net.Mail.

Къде се използва преобразуването на EML

  • ** Форматно преливане:** Приемане на имейли като EML от пощенски сървъри и конвертиране в MSG за съвместимо с Outlook хранилище.
  • Съответствие на стандартите: Преобразуване на собствени файлове MSG в стандартни MIME за доставка до всеки пощенски транспорт.
  • Архивна нормализация: Нормализиране на смесен архив от файлове .eml и .msg в един формат.
  • Тестови работни потоци: Създаване на .eml уреди в тестове и проверка, че те оцеляват без загуба на данни при MSG.

Прочетете тема от MSG файл

Отворете Outlook MSG файл от поток и печатайте темата не е необходим Microsoft Outlook.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Създаване и съхранение на съобщение от MSG

Създайте пълен имейл с изпращач, получател и прикачен файл. След това го напишете в MSG файла.

using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);

Преобразуване на EML в MSG

Заредете стандартен файл .eml и го запазете като Outlook .msg файла, използвайки вграден MIME парсер.

using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);
  

Ресурси за поддръжка и обучение

 Български