メールが文字化けします。

こんにちは。

mac book OS10.5.6を使っています。

付属のMailのソフトを使っています。

ヤフーと.macのアドレスを持っています。(@ybb.ne.jpと、@mac.com)です。


一斉に複数の人(2回に分けて100名程度)にご案内のメールをBccで送ることがあります。

その際に、どうも何人かへのメールが文字化けしています。


文字化けして届いている人が全員知らせてくださる訳ではないので、分かる範囲でしか分からないのですが。


文字化けしていると教えてくれた人に、@ybb.ne.jpと、@mac.com、標準テキスト、リッチテキスト、と、試してみましたがだめでした。

ヤフーのホームページからフリーメールで送ったら大丈夫でした。


PCの人からも、携帯メールの人からも、文字化け報告がありました。


多分、何人かの人には、延々と文字化けメールを送り続けていることになっているようです(^^ゞ

とても困っています。

原因が分かりましたらぜひともお教えいただきたいです。

よろしくお願いします。

投稿日 2009/05/15 19:06

返信
返信: 14

2009/05/16 22:12 uni への返信

Mailで新規で日本語メッセージを作成すると、テキストエンコーディングは

「自動」になりますが、送られたメールを見ると、Shift-JISになっています。

ISO-2022-JPが標準であるメーラーにとっては文字化けとなります。


10.5のMailのデフォルトのエンコーディングを強制的に、ISO-2022-JP

にする方法がありますので、参考にしてみてはいかがでしょうか。


http://blog.yakitara.com/2008/01/nspreferredmailcharset-on-leopard.html


送信したメールのエンコーディングを確認するのは、送信済みのメッセージを

選択し、メッセージ>全てのヘッダーを表示かソースを表示すると、

Content-Typeあたりのタグに表示されます。


---

変更)情報源が2次情報だったので、1次情報に変更しました。


このメッセージは次により編集されています: くろむぎ

2009/05/15 19:34 uni への返信

新規メールを作成時に

・[メッセージ]→[テキストエンコーディング]でISO 2022-jpを選んでください。

・[フォーマット]で標準テキストになるようにしてください。

を選んでください。


Mail.appの環境設定の「作成」の中で

・メッセージのフォーマット を「標準テキスト」

・受信メッセージと同じフォーマットを使用のチェックを外す

としておくと、次回からは安全なメールを送れると思います。

最初は念のためにテキストエンコーディングなどを確認した方がよいでしょう。

2009/05/16 04:06 uni への返信

AppleのMailでは、テキストエンコーディングが必ず「自動」に設定されます。

これは、次を意味します。

  • 半角英数字のみのメッセージを送信:US-ASCII
  • 日本語を含むメッセージを送信:ISO-2022-JP
  • 機種依存文字を含むメッセージを送信:UTF-8


問題は、UTF-8に自動的に設定される点にあります。UTF-8を扱えないメーラーは、現在も数多く使用されています。このようなメーラーでは、UTF-8に設定されたメッセージはまったく読むことができません。


メッセージの作成時に手動で「ISO-2022-JP」に設定した場合も、機種依存文字を含むと自動的に「UTF-8」に変更されます。これまで何度も文字化けしているというのは、これまでに送ったメッセージに機種依存文字が含まれていたことがあったのでしょう。


下記の文書の方法でデフォルト設定を「ISO-2022-JP」にできますが、機種依存文字を含めるとやはり「UTF-8」に変更されます。つまり、機種依存文字を含めないように気をつけるしかありません。


Mac OS X 10.4: Mail から Web Mail や携帯電話に送った送信メールが文字化けする


(くろむぎさんが紹介されたリンク先…からリンクされている方法で、強制的に「ISO-2022-JP」にした場合は、どうなるかわかりません。)


詳しくは、下記のトピックをお読みください。


送信メールの文字コードをShift JIS固定にするには?


P.S.

くろむぎさんへ。

メッセージがShift-JISになっているというのは、誤りだと思います。

2009/05/16 08:42 野尻隆裕 への返信

先のメッセージは言葉不足でしたので訂正します。


Apple Mailの新規メッセージを作成すると、テキストエンコーディングは「自動」に設定されます。

この状態で日本語メッセージを書くと、基本的にはISO-2022-JPとなります。


しかし、書かれている文字等によって、自動的に解釈されテキストエンコーディングがISO-2022-JP以外に設定されることがあります。

具体的には以下のようになりました。(Windowsでは表示されないかもしれません)

 鰀 →Shift-JIS (人名で「えの」と読みます)

 ① →CP932  (白丸の中に1)

 ⌘ →UTF-8  (コマンド記号)

この場合受信側のメーラーによっては文字化けすることがあります。


対応方法1

こういちさんの書かれた方法で、個別のメールについてテキストエンコーディングをISO-2022-JPに設定するのが、何も変更すること無く実施可能で確実です。


毎回確認するのが面倒な方は以下の方法もあります。


対応方法2

10.4のMailではこちらの方法があるようですが、10.5のMailでは無効との情報がありますので、文字化けしたメールで有効かを確認してみるのが良いかと思います。

http://support.apple.com/kb/TA23398?viewlocale=ja_JP


対応方法3

こちらのサイトに、10.5のMailでテキストエンコーディングを強制的にISO-2022-JPに固定するプラグインが配布されています。影響範囲はわかりませんがご紹介します。

自分は問題無く使えています。

http://blog.yakitara.com/2008/01/nspreferredmailcharset-on-leopard.html


PS

野尻隆裕さん

本文の文字によっては、Shift-JISに設定されることがある、というのが意図する所でした。

時間がなかったので端折りすぎてました。

2009/05/16 10:08 くろむぎ への返信

くろむぎさん、コメントをありがとうございます。

ISO-2022-JPの代わりにUTF-8になることがあるのは知っていましたが、文字によってはほかの文字コードになることがあるとは知りませんでした。


ただ、こちらで試したところ、くろむぎさんのコメントと異なる結果になりました。Shift-JISになることはなく、代わりにCP932になりました。


とはいえ、CP932は、MicrosoftなどがShift-JISを独自に拡張したものであり、Shift-JISのWindows方言です。UTF-8を受信できない駄目メーラーは未だに多いのですが、それらの多くはWindowsのShift-JISは(OSに丸投げすることで)扱えます。そんな現実に合わせた仕様に(Mac OS X 10.5付属のMail 3.0で?)改めたのかもしれません。


実験内容

◎共通条件

タイトルは半角英字のみ。


◎実験と結果

送信時の本文

受信したメールの文字コード指定
実験です。charset=ISO-2022-JP
鰀です。charset=CP932
①です。charset=CP932
⌘です。charset=UTF-8


P.S.

CP932と指定されても何のことか分からず、ユーザーがShift-JISと指定しないと表示できない…なんて物を知らないメーラーがあって、それがuniさんの送信先で文字化けを起こしているのかもしれませんね。

2009/05/16 22:07 野尻隆裕 への返信

野尻さん、コメントいただきありがとうございます。


再度確認致しましたが、「鰀」については野尻さんのご指摘の通り、Shift_JISでは無くCP932でした。

受信メーラーでテキストエンコーディングをShift_JISにすることで、文字化けが直るため再確認を省略していました。

間違った情報を書いてすみませんでした。


今回のやり取りが無ければShitf_JISだと思っておりましたのでとても勉強になりました。ありがとうございました。

2009/05/17 10:30 くろむぎ への返信

ありがとうございます。

対処法が分かってうれしいです。


少なくとも、一斉メールを送信するときにはその手続き(エンコーディングをISO-2022-JPに設定する)をとれば解決するということですよね?


それがわかっただけでも随分ありがたいのですが、対処法3について、すいません、ここで伺っていいかどうか迷ったのですが……。

ダウンロードしたファイルをドラッグ&ドロップするように指定されている(と思われる)

/Library/Mail/Bundles/

が見あたりません。


Bundlesというフォルダがないです。


なにかとても間違っていますか?

すいません、重ねてお教えいただければ幸いです。


(ibookG4からデータを転送(?)しています。それが原因でしょうか?)

2009/05/17 10:35 野尻隆裕 への返信

教えていただいてありがとうございます。


少しずつ、分からなくなって来つつあります。

すいません。


もし、今、例にあがっているものが機種依存文字のすべてならば、それらは使用していません。

それでも文字化けするということと、機種依存文字は関係あるのでしょうか?


重ねての質問、申し訳ありません。

2009/05/17 15:44 uni への返信

もし、今、例にあがっているものが機種依存文字のすべてならば、それらは使用していません。

ごく一部でしかありません。ISO 2022-JPに含まれない文字は多数あります。特に記号類が駄目です。


私の場合、文字コードをチェックするには、以下の方法を使います。参考までにお伝えします。


1)JeditXというエディタを以下のサイトからダウンロードします。

 シェアウェアですが、試用できます。

 http://www.artman21.com/jp/jedit_x/


2)JeditXで新規ウインドウを作成します。


3)ファイルを保存する際に、エンコーディングを「ISO 2022-JP」に設定します。


4)メール本文を入力し、メールにフッタがあるならそれも入力した上で、上書き保存します。


5)もし、「ISO 2022-JP」に合致しない文字があれば警告されますから、それを探して修正します。


6)警告されなくなったら、それをコピーして、メールのウインドウにペーストします。

2009/05/18 02:09 野尻隆裕 への返信

ありがとうございます。

前回文字化けしたメールをチェックしたら、なみせんと、半角スペースが引っかかっていました。

なるほど!


そもそも署名に半角スペースが入っていましたので、これだと、メールほとんど全部アウト、でした(^^ゞ


ありがとうございました。

感謝!

2009/05/18 02:36 uni への返信

なみせんと、半角スペースが引っかかっていました。

ああっ、なるほどです。

波線(〜)と半角スペースは、見た目は同じでもコードが異なる複数の文字があります。

そして、あるコードの文字はISO 2022-JPに含まれ、別のコードの文字は含まれない、という状況になります。


JeditXで警告された波線と半角スペースについては、JeditX上で入力しなおすと解決したのではないでしょうか。

署名についても、入力しなおして警告されないことを確認したものを使えば、以後安心して利用できます。

2009/09/20 17:02 野尻隆裕 への返信

Mac OS X 10.6.1のMail 4.1で同じテストをしました。

その結果、下記のようにCP932を使わなくなっていました。


実験内容

◎共通条件

タイトルは半角英字のみ。


◎実験と結果

送信時の本文

受信したメールの文字コード指定
実験です。charset=ISO-2022-JP
鰀です。charset=UTF-8
①です。charset=UFT-8
⌘です。charset=UTF-8

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

メールが文字化けします。

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。