将 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");