2010年09月09日

iPhoneからのメールが文字化け?

昨日のことですが、外出中にメールの返信をする必要があったため、iPhoneから自宅のIMAPメールサーバーにアクセスして返事を出しました。
ところが今日になって、先方から「文字化けして読めない」との電話が。幸い、今回は電話でも済む用事だったので大事には至りませんでしたが、無用なトラブルを避ける意味でも原因を解明しておく必要がありそうです。

まず最初に思いついたのが、charset=CP932問題。これについては過去記事にも書きましたが、Mac上のApple Mailで「〜」などの文字を使うとcharset=CP932という規格外のcharsetが指定されるので、普通のMUAでは読むことができないというもの。(ちなみにSnow Leopardでは既に対処されているそうです。)
これについては、iPhoneから実際に「〜」を含むメールを出してみて確認しましたが、charset=CP932とはなっていなかったので、この問題ではないようです。

次に思ったのが、charsetやContent-Transfer-Encodingが実際の値と食い違っているのではないか、ということ。実際にiPhoneからメールを出して確認してみたところ、charset=iso-2022-jpの場合には問題なし。
ところがcharset=utf-8の場合には、実際の文字コード自体は正しいのですが、Content-Transfer-Encoding: 7bitとなっていて、これが問題を引き起こしているようです。当然ながらutf-8は8ビットコードなので、7bitで送るにはbase64エンコードするか、quoted-printableにしなくてはいけないはずなのに、Content-Transfer-Encoding: 7bitを指定して、なおかつ生の8ビットコードをそのまま送っているのです。
ちょっと気の利いたMUAなら自動判別して正しく表示してくれるのですが、今回文字化けだと電話してきた先方はOutlook Expressを使っているらしいので、そうなってしまったということのようです。

もちろん、Outlook Expressなど使うな、というのが最も正しい解決法なのですが、取引先なのであまり強いことも言えず…。

iOS 4.1で直ってるといいけどなあ。
posted by ぽそこし at 23:24| Comment(0) | TrackBack(0) | 備忘録 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント: [必須入力]

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック