Why to Convert
As a C++ developer, you may need to add email conversion features inside your applications. One of the most common conversions is from OFT file format to HTML. This conversion is necessary for a variety of reasons, such as to make the email content more accessible, to make it easier to share, or to make it easier to edit.
How Aspose.Total Helps for OFT to ODT Conversion
Aspose.Total for C++ is a comprehensive suite of APIs that can help you with your email conversion needs. It includes two APIs that can be used to convert OFT file format to HTML and then export HTML to ODT. The first API is Aspose.Email for C++, which can be used to convert OFT file format to HTML. The second API is Aspose.Words for C++, which can be used to export HTML to ODT. Both APIs are included in the Aspose.Total for C++ package, making it easy to access both APIs in one convenient package. With Aspose.Total for C++, you can quickly and easily convert OFT file format to HTML and then export HTML to ODT.
C++ API to Convert OFT to ODT
- Open OFT file using MailMessage class reference
- Convert OFT to HTML by using Save member function
- Load HTML by using Document class
- Save the document to ODT format using Save method and set Odt as SaveFormat
Get Started with C++ File Format APIs
Install from command line as nuget install Aspose.Total.Cpp
or via Package Manager Console of Visual Studio with Install-Package Aspose.Total.Cpp
.
Alternatively, get the offline MSI installer or DLLs in a ZIP file from downloads .
// load the OFT file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.oft");
// save OFT 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 Odt as save format
doc->Save(u"convertedFile.Odt");
Parse OFT File via C++
Not only you can convert your OFT to ODT, but you can read, manipulate, and parse OFT document. You can get subject, address, body, recipients information of the email by using MapiMessage class of Aspose.Email for C++ API. For example, you can check for a specific sender email for the conversion by using get_SenderEmailAddress() property.
// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.oft");
// 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());
C++ API to Restrict ODT File Format Editing
You can also add document protection features in your app while exporting the document from OFT to ODT. Adding protection to your document is a simple process, as all you need to do is apply the protection method to your document. You can set protection type to ReadOnly to restrict the user to edit the document.
// 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.Odt");