うまいぼうぶろぐスマートフォン用の表示で見るうまいぼうぶろぐlinuxとhttpdとperlのメモ2010-01-22メールのSubjectヘッダのエンコードsmtp復習がてら。http://yamanjo.net/basic_knowledge/internet/internet_22.html日本語というかマルチバイトは使えないのでエンコードする必要あり。形式=???<エンコードされたヘッダ文字列>?=日本語の場合charsetISO-2022-JPmethodBASE64ならB、Quoted-PrintableならQ。欧米様式の7ビット規格のサーバやソフトを経由したら、1ビット分が破棄されるという事態になることがあります。これが、「文字化け」という現象です。(もし文字化けメールを受け取ったら、相手のメーラーの設定を確認してもらいましょう)そこで、この現象を避けるために、日本語の文字コードでも7ビットコードを使う方法が考え出されました。encode/decodeする方法いろいろある。MIME::Base64::encode_base64/decode_base64実験してみた。iso-2022-jp用のエンコード/デコード端末の設定はutf8。nkfのデフォルトの出力は-jのJIS出力なので-j,-Jオプションはいらない、かも。-j=?ISO-2022-JP?B?GyRCRnxLXDhsJUYlOSVIGyhCメーラで件名を"日本語テスト"にして送信、受信したメールのヘッダを確認。?="に囲まれた部分がBase64エンコードされた同じ文字列になっている。-w=?UTF-8?B?5pel5pys6Kqe44OG44K544OIメーラで件名を"日本語テスト"にして送信、受信したメールのヘッダを確認。