將 EMAIL 導出為 TEXT 的 C++ API

在 C++ 應用程序中將 EMAIL 轉換為 TEXT,無需 Microsoft Word 或 Outlook

 

您是一名 C++ 開發人員,希望在您的應用程序中添加電子郵件轉換功能嗎?使用 Aspose.Email for C++ ,您可以將 EMAIL 文件格式轉換為 HTML。之後,通過使用 Aspose.Words for C++ API,您可以將 HTML 導出為 TEXT。這兩個 API 都屬於 Aspose.Total for C++ 包。

將 EMAIL 轉換為 TEXT 的 C++ API

  1. 使用 MailMessage 類參考打開 EMAIL 文件
  2. 使用 Save 成員函數將 EMAIL 轉換為 HTML
  3. 使用 Document 類加載 HTML
  4. 使用 Save 方法將文檔保存為 TEXT 格式,並將 Text 設置為 SaveFormat

轉換要求

從命令行安裝為 nuget install Aspose.Total.Cpp 或通過 Visual Studio 的包管理器控制台使用 ```Install-Package Aspose.Total.Cpp``。

或者,從 下載 獲取 ZIP 文件中的離線 MSI 安裝程序或 DLL。

// load the EMAIL file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.msg");
// save EMAIL as a HTML 
msg->Save(u"HtmlOutput.html", SaveOptions::get_DefaultHtml());  
// load HTML with an instance of Document
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"HtmlOutput.html");
// call save method while passing Text as save format
doc->Save(u"convertedFile.Text");

通過 C++ 解析 EMAIL 文件

您不僅可以將 EMAIL 轉換為 TEXT,還可以閱讀、操作和解析 EMAIL 文檔。您可以使用 Aspose.Email for C++ API 的 MapiMessage 類獲取電子郵件的主題、地址、正文、收件人信息。例如,您可以使用 get_SenderEmailAddress() 屬性檢查轉換的特定發件人電子郵件。

// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.msg");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmailAddress());
// get body
System::Console::WriteLine(System::String(L"Body") + msg->get_Body());
// get recipients information
System::Console::WriteLine(System::String(L"Recipient: ") + msg->get_Recipients());

限制 TEXT 文件格式編輯的 C++ API

在將文檔從 EMAIL 導出到 TEXT 時,您還可以在應用程序中添加文檔保護功能。為您的文檔添加保護是一個簡單的過程,因為您需要做的就是將保護方法應用於您的文檔。您可以將保護類型設置為只讀以限制用戶編輯文檔。

// create a new document and protect it with a password.
auto doc = System::MakeObject<Document>();
// apply Document Protection.
doc->Protect(ProtectionType::ReadOnly, u"password");
// save the document.
doc->Save(u"DocumentProtection.PasswordProtection.Text");