パッケージ RDCOMClient を使用して R でメールを作成しようとしています。電子メールは基本的に、UTF-8 でエンコードされた HTML テキスト (および一部の画像) で構成されています。私が抱えている問題は、HTML が必要なすべての特殊文字を完全にエンコードする一方で、電子メールを .msg ファイルとして保存して Outlook で開いた後、特殊文字が正しく表示されなくなることです。したがって、RDCOMClient の SaveAs 機能を使用すると、何か問題が発生するはずです。
これが私のコードの最小限の例です:
library(RDCOMClient)
library(textutils)
OutApp <- COMCreate("Outlook.Application")
outMail = OutApp$CreateItem(0)
outMail[["To"]] = 'myemail@test.com'
outMail[["subject"]] = 'Dummy subject'
outMail[["HTMLBody"]] <- HTMLdecode(' <b>Tout est prêt de votre côté? Faisons une vérification</b> </br>')
outMail$SaveAs(print(paste0(getwd(), '/test', ".msg",collapse="")))
出力メールの本文は次のようになります。
 Tout est pr攼㹡t de votre c昼㸴t攼㸹? Faisons une v攼㸹rification
エンコーディングを含むさまざまなアプローチをたくさん試しました。私の実際のケースでは、UTF-8 でエンコードされた csv ファイルから電子メールの本文のテキストを読み込んでいます。enc2native() 関数をいじったり、別のエンコーディングを設定したり (withr や set.encoding などを使用) してみました。さらに、フランス語の設定がされているコンピューターと Mac でも試してみましたが、うまくいきませんでした...
HMTLコードなしで生の文だけで試してみると、完全にうまく機能することに気付きました:
HTMLdecode('Tout est prêt de votre côté? Faisons une vérification')
私は過去 2 日間、これを解決しようとしてきましたが、現時点では R に非常に不満を感じているため、すべてを Python に移行することに本当に近づいていますが、正確にPythonでも同じ問題。
誰もそれを解決する方法を知っていますか?
よろしくお願いします!