トップ回答者
メールのEncodeで字化け

質問
-
回答
-
himi07 さんからの引用 asp.net2.0の中からメール送信を行うために
subjectや本文を
Encoding.GetEncoding(" iso-2022-jp")ではなくて
Encoding.GetEncoding("shift-jis")いた場合に
gmailでは、字化けしてしまいますが、この内容でわかる方がいらっしゃたら、教えて頂けませんか?
あるソフトで読めるからといって、好き勝手なコード系で送っていいとは限りません。
メールのヘッダ(subjectとか)に日本語を使う場合は、RFCにて次のようにする事が決まっています。
・日本語をJISコードに変換し、BASE64にエンコードしてから=?iso-2022-jp?B? と ?= で囲む
とはいっても、RFCを無視して送信する事もできてしまいますから(相手に届くかどうか分からないし、化けずに呼んでもらえるかどうかも分からないけれど)、メールを送信するときにはRFCを守り、メールを受信するときにはRFC違反のメールでも何とかするように構築するのが良いでしょう。
ご質問のケースはメール送信側ですから、試行錯誤ではなく、一度きちんとヘッダや本文に設定するコード系や指定するヘッダなどを調べてみるのが良いかと思います。
参考になりそうなURL:
http://www.kanzaki.com/docs/jis-mail.html#JIS
すべての返信
-
himi07 さんからの引用 asp.net2.0の中からメール送信を行うために
subjectや本文を
Encoding.GetEncoding(" iso-2022-jp")ではなくて
Encoding.GetEncoding("shift-jis")いた場合に
gmailでは、字化けしてしまいますが、この内容でわかる方がいらっしゃたら、教えて頂けませんか?
あるソフトで読めるからといって、好き勝手なコード系で送っていいとは限りません。
メールのヘッダ(subjectとか)に日本語を使う場合は、RFCにて次のようにする事が決まっています。
・日本語をJISコードに変換し、BASE64にエンコードしてから=?iso-2022-jp?B? と ?= で囲む
とはいっても、RFCを無視して送信する事もできてしまいますから(相手に届くかどうか分からないし、化けずに呼んでもらえるかどうかも分からないけれど)、メールを送信するときにはRFCを守り、メールを受信するときにはRFC違反のメールでも何とかするように構築するのが良いでしょう。
ご質問のケースはメール送信側ですから、試行錯誤ではなく、一度きちんとヘッダや本文に設定するコード系や指定するヘッダなどを調べてみるのが良いかと思います。
参考になりそうなURL:
http://www.kanzaki.com/docs/jis-mail.html#JIS