PNG JPG BMP TIFF EML
Aspose.Email  для .NET

Сравнение форматов EML на C#

Нативное и высокопроизводительное сравнение сообщений EML с использованием серверных API Aspose.Email для .NET без необходимости установки Microsoft Office или PDF.

Как сравнить файл EML с помощью C#

Чтобы сравнить файл EML, мы будем использовать

Aspose.Email для .NET

API, представляющий собой богатый функциями, мощный и простой в использовании API манипулирования документами для платформы C#. Откройте

NuGet

В менеджере пакетов найдите Aspose.Email и установите. Вы также можете использовать следующую команду в консоли Package Manager.

Команда


PM> Install-Package Aspose.Email

Шаги для сравнения файлов EML на C#

Базовое сравнение сообщений с помощью

Aspose.Email для .NET

С помощью API можно выполнить сравнение документов Outlook, Gmail, Apple Mail, Thunderbird всего за несколько строк кода и получить различия между двумя письмами.

  • Загрузите два почтовых файла для сравнения.
  • Получите содержимое тела для каждого почтового файла.
  • Сравнение с использованием метода GetMatrix.
  • Список различий и установка содержимого тела.
  • Сохраните файл.

Системные требования

Наши API поддерживаются на всех основных платформах и операционных системах. Перед выполнением кода ниже убедитесь, что в вашей системе имеются следующие предварительные требования.

  • Microsoft Windows или совместимая ОС с .NET Framework, .NET Core и Xamarin
  • Среда разработки, например Microsoft Visual Studio
  • DLL Aspose.Email for .NET, добавленная в ваш проект — установите из NuGet, используя кнопку «Download» выше
 

Сравнение файлов EML - C#

// fileName1 = eml first file to compare
// fileName2 = eml second file to compare
var email1 = MapiHelper.GetMapiMessageFromFile(Path.Combine(Config.Configuration.WorkingDirectory, folderName, fileName1));
var email2 = MapiHelper.GetMapiMessageFromFile(Path.Combine(Config.Configuration.WorkingDirectory, folderName, fileName2));

var body1 = email1.Body.Split(new string[] { " " }, StringSplitOptions.None).SelectMany(SplitOfNewLine).ToArray();
var body2 = email2.Body.Split(new string[] { " " }, StringSplitOptions.None).SelectMany(SplitOfNewLine).ToArray();

var lcsMatrix = GetMatrix(body1, body2, StringComparer.Ordinal);

var list = new List( LSTnode(string))();

ListDiffTreeFromBacktrackMatrix(list, lcsMatrix, body1, body2, StringComparer.Ordinal);

email2.SetBodyContent(BuildBodyDiff(list), Email.Mapi.BodyContentType.Html);

email2.Save(outPath);            
 
  • Об API Aspose.Email для .NET

    Aspose.Email — это решение для разбора форматов Microsoft Outlook и Thunderbird. С его помощью можно легко создавать, изменять и конвертировать форматы электронной почты и хранилищ, такие как MSG, EMLX, EML и MHT. Обработка вложений, настройка заголовков сообщений и реализация различных сетевых протоколов, таких как POP3, IMAP и SMTP для отправки и получения писем, становятся гораздо проще. Это независимое API и не требует установки Microsoft Outlook или любого другого программного обеспечения.

    Online EML Comparison Live Demos

    EML What is EML File Format

    Формат файла EML представляет собой электронные сообщения, сохранённые с помощью Outlook и других соответствующих приложений. Практически все почтовые клиенты поддерживают этот формат файла благодаря его соответствию стандарту RFC‑822 Internet Message Format. Microsoft Outlook является программой по умолчанию для открытия сообщений типа EML. Файлы EML могут использоваться как для сохранения на диск, так и для отправки получателям по различным коммуникационным протоколам.

    Read More

    Другие поддерживаемые форматы сравнения

    С помощью C# можно также сравнивать многие другие файлы электронной почты, включая

    MBOX (Электронные сообщения)
    MSG (Форматы Outlook и Exchange)
    OST (Файлы Offline Storage)
    PST (Файлы Outlook Personal Storage)