Convertir un e-mail en HTML à l'aide de C++

De nos jours, les e-mails font partie des moyens de communication les plus courants sur Internet. En tant que développeurs de logiciels, vous voyez une grande variété de besoins des utilisateurs et de scénarios d’utilisation. L’une de ces exigences peut être que vous souhaitiez intégrer le contenu de l’e-mail dans des pages Web. Dans de tels cas, vous devrez convertir les e-mails au format HTML. Dans cet article, vous apprendrez à convertir des e-mails MSG et EML au format HTML ou MHTML par programmation à l’aide de C++.

API C++ pour convertir des e-mails en HTML

Aspose.Email for C++ est une bibliothèque C++ native pour créer, manipuler et envoyer des e-mails sans nécessiter l’installation de Microsoft Outlook. L’API offre également la possibilité de convertir des e-mails dans différents formats, y compris HTML. Vous pouvez soit installer l’API via NuGet ou la télécharger directement à partir de la section Téléchargements.

PM> Install-Package Aspose.Email.Cpp

Convertir un e-mail en HTML à l’aide de C++

La conversion de fichiers de courrier électronique en HTML est un jeu d’enfant avec Aspose.Email for C++. En seulement deux lignes de code, vous pouvez convertir un fichier e-mail au format HTML. Voici les étapes pour convertir un fichier de courrier électronique au format HTML à l’aide de C++.

Voici un exemple de code pour convertir les fichiers de courrier électronique au format HTML.

// Charger le fichier e-mail
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Convertir un e-mail en HTML
msg->Save(u"OutputDirectory\\EmailToHtml.html", Aspose::Email::SaveOptions::get_DefaultHtml());

Converting Email to MHTML using C++

Semblable à la conversion d’un e-mail au format HTML, vous pouvez convertir un fichier e-mail au format MHTML en passant Aspose::Email::SaveOptions::getDefaultMhtml() comme deuxième paramètre de MailMessage->Save (System : :String fileName, System::SharedPtr options) méthode. Voici les étapes pour convertir un fichier de courrier électronique au format MHTML.

Voici un exemple de code pour convertir des fichiers de courrier électronique au format MHTML.

// Charger le fichier e-mail
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.eml");

// Convertir les e-mails en MHTML
msg->Save(u"OutputDirectory\\EmailToMhtml.mhtml", Aspose::Email::SaveOptions::get_DefaultMhtml());

Exporter un e-mail au format HTML avec en-tête

Par défaut, le code HTML généré n’inclut pas les informations d’en-tête de l’e-mail. Pour exporter les informations d’en-tête, vous pouvez utiliser la classe HtmlSaveOptions. Voici les étapes pour convertir les fichiers de courrier électronique au format HTML avec les informations d’en-tête incluses dans le code HTML résultant.

Voici un exemple de code pour convertir des e-mails en HTML avec des informations d’en-tête.

// Charger le fichier e-mail
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Instancier HtmlSaveOptions
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();

// Indique que les informations d'en-tête doivent être écrites.
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);

// Convertir un e-mail en HTML
msg->Save(u"OutputDirectory\\EmailToHTWithHeader.html", saveOptions);

Conversion e-mail en HTML avec fuseau horaire personnalisé

Aspose.Email for C++ vous offre la possibilité de convertir des e-mails en spécifiant un fuseau horaire personnalisé. Le fichier HTML résultant affichera l’heure dans le fuseau horaire sélectionné. Voici les étapes pour convertir les fichiers de courrier électronique au format HTML avec un fuseau horaire personnalisé.

Voici un exemple de code pour convertir des fichiers de courrier électronique au format HTML avec un fuseau horaire personnalisé à l’aide de C++.

// Charger le fichier e-mail
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");

// Réglez l'heure locale pour la date du message.
msg->set_TimeZoneOffset(System::TimeZone::get_CurrentTimeZone()->GetUtcOffset(System::DateTime::get_Now()));

// Instancier HtmlSaveOptions
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();

// Indique que les informations d'en-tête doivent être écrites.
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);

// Convertir un e-mail en HTML
msg->Save(u"OutputDirectory\\EmailToHTMLWithCustomTimezone.html", saveOptions);

Obtenez une licence gratuite

Vous pouvez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Démo en direct

Conclusion

Dans cet article, vous avez appris à convertir des fichiers MSG et EML au format HTML et MHTML à l’aide de C++. Vous avez également vu comment inclure des informations d’en-tête dans la sortie HTML générée. De plus, vous avez appris à personnaliser le fuseau horaire de l’e-mail. Aspose.Email for C++ fournit de nombreuses autres fonctionnalités pour travailler avec des fichiers de courrier électronique. Vous pouvez explorer l’API en détail en visitant la documentation officielle. Si vous avez des questions, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également