使用 C++ 將電子郵件轉換為 HTML

在當今時代,電子郵件是互聯網上最常用的通信方式之一。作為軟件開發人員,您會看到各種各樣的用戶需求和使用場景。其中一個要求可能是您希望將電子郵件內容嵌入網頁中。對於這種情況,您需要將電子郵件轉換為 HTML 格式。在本文中,您將學習如何使用 C++ 以編程方式將 MSGEML 電子郵件轉換為 HTML 或 MHTML 格式。

用於將電子郵件轉換為 HTML 的 C++ API

Aspose.Email for C++ 是一個原生的 C++ 庫,用於創建、操作和發送電子郵件,無需安裝 Microsoft Outlook。該 API 還提供將電子郵件轉換為不同格式(包括 HTML)的功能。您可以通過 NuGet 安裝 API 或直接從 下載 部分下載。

PM> Install-Package Aspose.Email.Cpp

使用 C++ 將電子郵件轉換為 HTML

使用 Aspose.Email for C++ API 將電子郵件文件轉換為 HTML 是一件輕而易舉的事。只需兩行代碼,您就可以將電子郵件文件轉換為 HTML 格式。以下是使用 C++ 將電子郵件文件轉換為 HTML 格式的步驟。

以下是將電子郵件文件轉換為 HTML 格式的示例代碼。

// 加載電子郵件文件
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// 將電子郵件轉換為 HTML
msg->Save(u"OutputDirectory\\EmailToHtml.html", Aspose::Email::SaveOptions::get_DefaultHtml());

使用 C++ 將電子郵件轉換為 MHTML

類似於將電子郵件轉換為 HTML,您可以通過將 Aspose::Email::SaveOptions::getDefaultMhtml() 作為 MailMessage->Save (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 for C++ 為您提供了通過指定自定義時區來轉換電子郵件的能力。生成的 HTML 文件將顯示所選時區的時間。以下是將電子郵件文件轉換為具有自定義時區的 HTML 格式的步驟。

以下是使用 C++ 將電子郵件文件轉換為具有自定義時區的 HTML 格式的示例代碼。

// 加載電子郵件文件
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。

現場演示

結論

在本文中,您學習瞭如何使用 C++ 將 MSG 和 EML 文件轉換為 HTML 和 MHTML 格式。您還看到瞭如何在生成的 HTML 輸出中包含標題信息。此外,您還學習瞭如何自定義電子郵件的時區。 Aspose.Email for C++ 提供了更多處理電子郵件文件的功能。您可以通過訪問 官方文檔 來詳細探索 API。如果您有任何疑問,請隨時通過我們的 免費支持論壇 與我們聯繫。

也可以看看