今日、電子メールはインターネットを介した最も一般的なコミュニケーション手段の1つです。ソフトウェア開発者として、さまざまなユーザー要件と使用シナリオがあります。そのような要件の1つは、電子メールコンテンツをWebページに埋め込みたい場合です。このような場合は、メールをHTML形式に変換する必要があります。この記事では、C++を使用してプログラムでMSGおよびEMLの電子メールをHTMLまたはMHTML形式に変換する方法を学習します。
- 電子メールをHTMLに変換するためのC++API
- C++を使用して電子メールをHTMLに変換する
- C++を使用したEメールのMHTMLへの変換
- メールをヘッダー付きのHTMLにエクスポート
- カスタムタイムゾーンを使用した電子メールからHTMLへの変換
- 無料ライセンスを取得する
電子メールをHTMLに変換するためのC++API
Aspose.Email for C++は、Microsoft Outlookをインストールしなくても、電子メールを作成、操作、および送信するためのネイティブC++ライブラリです。 APIは、電子メールをHTMLを含むさまざまな形式に変換する機能も提供します。 APIは、NuGetからインストールするか、ダウンロードセクションから直接ダウンロードできます。
PM> Install-Package Aspose.Email.Cpp
C++を使用して電子メールをHTMLに変換する
電子メールファイルをHTMLに変換するのは、Aspose.Email for C++APIを使用すると簡単です。たった2行のコードで、電子メールファイルをHTML形式に変換できます。以下は、C++を使用して電子メールファイルをHTML形式に変換する手順です。
- MailMessageクラスを使用してメールファイルをロードします。
- MailMessage->Save(System::String fileName, System::SharedPtrオプション)メソッド。
以下は、電子メールファイルをHTML形式に変換するためのサンプルコードです。
// メールファイルを読み込む
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");
// メールをHTMLに変換する
msg->Save(u"OutputDirectory\\EmailToHtml.html", Aspose::Email::SaveOptions::get_DefaultHtml());
C++を使用したEメールのMHTMLへの変換
メールをHTMLに変換するのと同様に、MailMessage->Save(System::String fileName, System::SharedPtr options)メソッド。以下は、電子メールファイルをMHTML形式に変換する手順です。
- MailMessageクラスを使用してメールファイルをロードします。
- MailMessage->Save(System::String fileName, System::SharedPtr options)メソッド。
以下は、電子メールファイルをMHTML形式に変換するためのサンプルコードです。
// メールファイルを読み込む
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.eml");
// メールをMHTMLに変換する
msg->Save(u"OutputDirectory\\EmailToMhtml.mhtml", Aspose::Email::SaveOptions::get_DefaultMhtml());
メールをヘッダー付きのHTMLにエクスポート
デフォルトでは、生成されたHTMLには電子メールヘッダー情報は含まれていません。ヘッダー情報をエクスポートするには、HtmlSaveOptionsクラスを使用できます。以下は、結果のHTMLに含まれるヘッダー情報を使用して電子メールファイルをHTML形式に変換する手順です。
- MailMessageクラスを使用してメールファイルをロードします。
- HtmlSaveOptionsクラスのインスタンスを作成します。
- SaveOption->set_HtmlFormatOptions(Aspose::Email::HtmlFormatOptions value)メソッドを使用して、ヘッダー情報を表示するようにフォーマットオプションを設定します。
- 最後に、MailMessage->Save(System::String fileName, System::SharedPtr options)メソッド。
以下は、ヘッダー情報を含む電子メールをHTMLに変換するためのサンプルコードです。
// メールファイルを読み込む
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");
// HtmlSaveOptionsをインスタンス化します
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();
// ヘッダー情報を書き込む必要があることを示します。
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);
// メールをHTMLに変換する
msg->Save(u"OutputDirectory\\EmailToHTWithHeader.html", saveOptions);
カスタムタイムゾーンを使用した電子メールからHTMLへの変換
Aspose.Email for C++は、カスタムタイムゾーンを指定することで電子メールを変換する機能を提供します。結果のHTMLファイルには、選択したタイムゾーンの時刻が表示されます。以下は、カスタムタイムゾーンを使用して電子メールファイルをHTML形式に変換する手順です。
- MailMessageクラスを使用してメールファイルをロードします。
- MailMessage->set_TimeZoneOffset(System::TimeSpan value)メソッドを使用してカスタムタイムゾーンを設定します。
- HtmlSaveOptionsクラスのインスタンスを作成します。
- SaveOption->set_HtmlFormatOptions(Aspose::Email::HtmlFormatOptions value)メソッドを使用して、ヘッダー情報を表示するようにフォーマットオプションを設定します。
- 最後に、MailMessage->Save(System::String fileName, System::SharedPtr options)メソッド。
以下は、C++を使用してカスタムタイムゾーンで電子メールファイルをHTML形式に変換するためのサンプルコードです。
// メールファイルを読み込む
System::SharedPtr<MailMessage> msg = MailMessage::Load(u"SourceDirectory\\Message.msg");
// メッセージ日付の現地時間を設定します。
msg->set_TimeZoneOffset(System::TimeZone::get_CurrentTimeZone()->GetUtcOffset(System::DateTime::get_Now()));
// HtmlSaveOptionsをインスタンス化します
System::SharedPtr<HtmlSaveOptions> saveOptions = System::MakeObject<HtmlSaveOptions>();
// ヘッダー情報を書き込む必要があることを示します。
saveOptions->set_HtmlFormatOptions(HtmlFormatOptions::WriteHeader);
// メールをHTMLに変換する
msg->Save(u"OutputDirectory\\EmailToHTMLWithCustomTimezone.html", saveOptions);
無料ライセンスを取得する
無料の一時ライセンスをリクエストすることで、評価の制限なしにAPIを試すことができます。
ライブデモ
結論
この記事では、C++を使用してMSGおよびEMLファイルをHTMLおよびMHTML形式に変換する方法を学習しました。また、生成されたHTML出力にヘッダー情報を含める方法も確認しました。さらに、電子メールのタイムゾーンをカスタマイズする方法を学びました。 Aspose.Email for C++は、電子メールファイルを操作するためのさらに多くの機能を提供します。 公式ドキュメントにアクセスすると、APIの詳細を調べることができます。ご不明な点がございましたら、無料サポートフォーラムまでお気軽にお問い合わせください。