C++ API для экспорта EML в ODT

Преобразование EML в ODT в приложении C++ без использования Microsoft Word или Outlook

 

Вы разработчик C++ и хотите добавить функции преобразования электронной почты в свои приложения? Используя Aspose.Eml для C++ , вы можете преобразовать формат файла EML в HTML. После этого, используя API Aspose.Words for C++ , вы можете экспортировать HTML в ODT. Оба API входят в пакет Aspose.Total for C++ .

C++ API для преобразования EML в ODT

  1. Откройте файл EML, используя ссылку на класс MailMessage .
  2. Преобразуйте EML в HTML с помощью функции-члена Save .
  3. Загрузите HTML с помощью класса Document .
  4. Сохраните документ в формате ODT с помощью метода Save и установите Odt в качестве SaveFormat.

Требования к конвертации

Установите из командной строки как nuget install Aspose.Total.Cpp или через консоль диспетчера пакетов Visual Studio с помощью Install-Package Aspose.Total.Cpp.

Кроме того, вы можете получить автономный установщик MSI или библиотеки DLL в ZIP-файле из загрузки .

// load the EML file to be converted
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"sourceFile.eml");
// save EML 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");

Разобрать файл EML через C++

Вы можете не только конвертировать EML в ODT, но и читать, манипулировать и анализировать документ EML. Вы можете получить информацию о теме, адресе, теле и получателях электронной почты, используя класс MapiMessage API Aspose.Eml для C++ . Например, вы можете проверить адрес электронной почты отправителя для конверсии, используя свойство get_SenderEmlAddress().

// create an instance of MapiMessage from file
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(dataDir + L"message.eml");
// get subject
System::Console::WriteLine(System::String(L"Subject:") + msg->get_Subject());
// get from address
System::Console::WriteLine(System::String(L"From:") + msg->get_SenderEmlAddress());
// 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 для ограничения редактирования формата файла ODT

Вы также можете добавить функции защиты документов в свое приложение при экспорте документа из EML в ODT. Добавление защиты к вашему документу — это простой процесс, так как все, что вам нужно сделать, это применить метод защиты к вашему документу. Вы можете установить тип защиты ReadOnly, чтобы запретить пользователю редактировать документ.

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

Исследуйте варианты преобразования EML с C++

Конвертировать EMLs в BMP (Файл растрового изображения)
Конвертировать EMLs в DOC (Двоичный формат Microsoft Word)
Конвертировать EMLs в DOCM (Файл Microsoft Word 2007 Марко)
Конвертировать EMLs в DOCX (Документ Office 2007+ Word)
Конвертировать EMLs в DOT (Файлы шаблонов Microsoft Word)
Конвертировать EMLs в DOTM (Файл шаблона Microsoft Word 2007+)
Конвертировать EMLs в DOTX (Файл шаблона Microsoft Word)
Конвертировать EMLs в EMF (Расширенный формат метафайла)
Конвертировать EMLs в EPUB (Открыть файл электронной книги)
Конвертировать EMLs в FLATOPC (Microsoft Word 2003 WordprocessingML)
Конвертировать EMLs в GIF (Графический формат обмена)
Конвертировать EMLs в PNG (Портативная сетевая графика)
Конвертировать EMLs в JPEG (Объединенная группа экспертов по фотографии)
Конвертировать EMLs в MD (Язык разметки)
Конвертировать EMLs в OTT (Шаблон OpenDocument)
Конвертировать EMLs в PCL (Язык команд принтера)
Конвертировать EMLs в PDF (Портативный формат документа)
Конвертировать EMLs в PNG (Портативная сетевая графика)
Конвертировать EMLs в RTF (Расширенный текстовый формат)
Конвертировать EMLs в SVG (Скалярная векторная графика)
Конвертировать EMLs в TIFF (Формат файла изображения с тегами)
Конвертировать EMLs в DOCX (Документ Office 2007+ Word)
Конвертировать EMLs в WORDML (Microsoft Word 2003 WordprocessingML)
Конвертировать EMLs в XPS (Спецификации XML-бумаги)