Преобразование электронной почты в HTML с помощью C++

В наши дни электронная почта является одним из наиболее распространенных средств общения через Интернет. Как разработчики программного обеспечения, вы сталкиваетесь с широким разнообразием пользовательских требований и сценариев использования. Одним из таких требований может быть то, что вы хотите встроить содержимое электронной почты в веб-страницы. В таких случаях вам необходимо преобразовать электронные письма в формат HTML. В этой статье вы узнаете, как программно конвертировать электронные письма MSG и EML в формат HTML или MHTML с помощью C++.

C++ API для преобразования электронных писем в HTML

Aspose.Email для C++ — это собственная библиотека C++ для создания, обработки и отправки электронных писем без установки Microsoft Outlook. API также предоставляет возможность конвертировать электронные письма в различные форматы, включая HTML. Вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.

PM> Install-Package Aspose.Email.Cpp

Преобразование электронной почты в HTML с помощью C++

Преобразование файлов электронной почты в HTML с помощью Aspose.Email for C++ API очень просто. Всего двумя строками кода вы можете преобразовать файл электронной почты в формат HTML. Ниже приведены шаги для преобразования файла электронной почты в формат HTML с помощью C++.

Ниже приведен пример кода для преобразования файлов электронной почты в формат HTML.

// Загрузить файл электронной почты
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Преобразование электронной почты в HTML
msg->Save(u"OutputDirectory\\EmailToHtml.html", Aspose::Email::SaveOptions::get_DefaultHtml());

Преобразование электронной почты в MHTML с помощью C++

Подобно преобразованию электронной почты в HTML, вы можете преобразовать файл электронной почты в формат MHTML, передав Aspose::Email::SaveOptions::get_DefaultMhtml() в качестве второго параметра MailMessage->Save ( System::String имя_файла, System::SharedPtr варианты) метод. Ниже приведены шаги для преобразования файла электронной почты в формат MHTML.

Ниже приведен пример кода для преобразования файлов электронной почты в формат MHTML.

// Загрузить файл электронной почты
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.eml");

// Преобразование электронной почты в MHTML
msg->Save(u"OutputDirectory\\EmailToMhtml.mhtml", Aspose::Email::SaveOptions::get_DefaultMhtml());

Экспорт электронной почты в HTML с заголовком

По умолчанию сгенерированный HTML не включает информацию заголовка электронной почты. Чтобы экспортировать информацию заголовка, вы можете использовать класс HtmlSaveOptions. Ниже приведены шаги для преобразования файлов электронной почты в формат HTML с информацией заголовка, включенной в результирующий HTML.

Ниже приведен пример кода для преобразования электронных писем в HTML с информацией заголовка.

// Загрузить файл электронной почты
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Создать экземпляр HtmlSaveOptions
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();

// Указывает, что информация заголовка должна быть записана.
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);

// Преобразование электронной почты в HTML
msg->Save(u"OutputDirectory\\EmailToHTWithHeader.html", saveOptions);

Преобразование электронной почты в HTML с пользовательским часовым поясом

Aspose.Email для C++ предоставляет вам возможность конвертировать электронные письма, указав собственный часовой пояс. Полученный HTML-файл покажет время в выбранном часовом поясе. Ниже приведены шаги для преобразования файлов электронной почты в формат HTML с пользовательским часовым поясом.

Ниже приведен пример кода для преобразования файлов электронной почты в формат HTML с настраиваемым часовым поясом с помощью C++.

// Загрузить файл электронной почты
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Установите местное время для даты сообщения.
msg->set_TimeZoneOffset(System::TimeZone::get_CurrentTimeZone()->GetUtcOffset(System::DateTime::get_Now()));

// Создать экземпляр HtmlSaveOptions
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();

// Указывает, что информация заголовка должна быть записана.
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);

// Преобразование электронной почты в HTML
msg->Save(u"OutputDirectory\\EmailToHTMLWithCustomTimezone.html", saveOptions);

Получить бесплатную лицензию

Вы можете попробовать API без ограничений на пробную версию, запросив бесплатную временную лицензию.

Живая демонстрация

Вывод

В этой статье вы узнали, как конвертировать файлы MSG и EML в формат HTML и MHTML с помощью C++. Вы также видели, как включить информацию заголовка в сгенерированный вывод HTML. Кроме того, вы узнали, как настроить часовой пояс электронной почты. Aspose.Email для C++ предоставляет гораздо больше возможностей для работы с файлами электронной почты. Вы можете подробно изучить API, посетив официальную документацию. Если у вас есть какие-либо вопросы, свяжитесь с нами на нашем бесплатном форуме поддержки.

Смотрите также