送信メールの文字コードをShift JIS固定にするには?
最近、わたしの送ったメールが文字化けして見えない、と多くの苦情が寄せられています。どうもUnicodeで送られた場合に読めないことがわかりました。そこで、送る時には、「メッセージ」メニューの「テキストエンコーディング」から毎回Shift JISにテキストを変換してから送るようにしています。でも、Shift JISにいつでも固定して送るように設定できれば、このようなわずらわしいことをしなくてもすみます。どなたか方法をご存知でしょうか?
最近、わたしの送ったメールが文字化けして見えない、と多くの苦情が寄せられています。どうもUnicodeで送られた場合に読めないことがわかりました。そこで、送る時には、「メッセージ」メニューの「テキストエンコーディング」から毎回Shift JISにテキストを変換してから送るようにしています。でも、Shift JISにいつでも固定して送るように設定できれば、このようなわずらわしいことをしなくてもすみます。どなたか方法をご存知でしょうか?
メールに Shift JIS は使わないでください。普通には iso-2022-jp (いわゆる JIS コード)を使います。
この話題は、文字化け、というような話題で、過去何度も出てきています。
結論としては、utf-8 で送られるのなら、相当の理由があるからです。また、utf-8 のメールを受けて読めない方の問題でもあります。
Mail.app の日本語の default code は iso-2022-jp になってます。
はにさん、ありがとうございます。
はにさんは誤解されています。JISコードは、最終的にInternetに通すときのコードです。
中澤です。どのような時に相手が文字化けしているか確かめました。Unicodeではなく、
Mime-Version: 1.0 (Apple Message framework v752.2)
Content-Type: multipart/alternative; boundary=Apple-Mail-4--845839219
Message-Id: <31FD2A2E-6F9E-4CB1-97EA-C9584B46B005@ybb.ne.jp>
X-Mailer: Apple Mail (2.752.2)
となっています。これはMailでdefaultとなっているISO 2022 JP でもないように思いますが。
はにさま、中澤です。
ISO 2022 JPを使って下さい、とのことですが、defaultでは、「自動」となっているのではないでしょうか。どんなメールを送信するときでも、必ずISO 2022 JPとなっているのでしょうか? そうではないのではないでしょうか? それでは、いつでも必ずISO 2022 JPに設定する方法を教えていただけますか?
はにさんの書かれたmessageをもう一度よく読まれてください。お聞きになっている事は全て過去トピックにあります。
ところで
> はにさんは誤解されています。JISコードは、最終的にInternetに通すときのコードです。
ご自身で文字化けするのでShift JISに固定したいと書いたという事は、送信時にShift JISにしたいという事になります。それをはにさんが指摘した訳ですが、どう誤解だったのか、傍から見ていても良くわかりませんが?
> ISO 2022 JPを使って下さい、とのことですが
MUA ISO 2022 JPでググってみてください。Shift JISではなくてISO 2022 JPを使うべきと書いた事に対して、そんなにも意地になって突っ込まれる様な事では無い事が理解出来ると思います。
繰り返しになりますが、兎に角トピックを立てる前にまずは、過去トピックなりググるなり、してください。
トピ主さん、探すのが面倒なのか、何かを誤解されているのか解りませんが参考に下記を一読されてみては...
「mail文字化け対策 教えて下さい」
「奇妙な文字化け 」
ちなみに検索をするまでもなく、見つけることができました...
usadil3さん、中澤です。
わたしの経験ですが、これまですべて送信前にShift-JISにして送って、相手からは文字化けしたとの報告は皆無です。ですから、はにさんが、最初に「メールはShift-JISではダメ」と書かれたことは必ずしも正しくはないのではないでしょうか。
過去トピックを、ということですが、わたしも確認しました。でもデフォールトの設定方法(Shift-JISをデフォールトにするかどうかと聞いたので、それはおかしいと言われましたが、そこが聞きたかったのではありません)は書かれていませんでした。個々での設定は、わたしも書きましたが、いつでも同じコードに設定したいのですが、それについては、教えていただいておりません。2回目のメールにもその旨を書いたのですが、、、、
> 「メールはShift-JISではダメ」
常識です。Shift JIS で出すぐらいなら、utf-8 で出してください。文字化けして読めないといわれたら、相手に、utf-8 のメールが読めないようでは、今からの時代ではメール利用は出来ないよ、といってやってください。(少なくとも、Windows XP の最新状態にして、メールソフトも新しくしていれば、utf-8 メールは問題なく読め、何も困ることはありません)
Shift JIS コードはメーカが勝手に拡張した悪影響が強くて、機種依存文字が多いです。Shift JIS では、あるパソコンではある文字が表示されても、別のパソコンでは別の文字が表示されたり、全く表示されなかったりします。utf-8 はそういうことがありません。携帯電話で利用されている、いわゆる、顔文字といわれる物(これは規格化されてないので、残念ながら、今のところ機種に依存しない文字としては使えません)以外はほとんど使えるといってもいいです。丸で囲んだ数字とか、記号とかもほとんど使えます。どのコンピュータでも、どの OS でも同じ文字が表示されます。だから、Shift JIS を使うぐらいなら、utf-8 を使うべきです。
どうしても文字化けを避けたい、ということなら、iso-2022-jp (JIS コード)を使うべきです。これなら文字化けすることはありません。そのかわり、いわゆる普通の文字しか使えません。マル囲み文字なんて使えません。Mail.app の場合、自動だと、こういう特殊な文字がなければ、iso-2022-jp になります。iso-2022-jp の文字セットにない文字が含まれているときには、utf-8 になります。この場合、一見したところ、特殊な文字が含まれてないように見えても、そのコードの断片が含まれているだけでも、utf-8 になってしまいます。iso-2022-jp 固定にしていると、そういう文字が含まれている場合、エラーになってメールを送れません。
文字コードを固定する方法は、文字化けに関する過去のスレッドにあります。ただしどのスレッドも何百ポストもありますのでご自分で探してください。ただし、固定していても、どうしてもそのコードに出来ない文字が含まれているときには、utf-8 になってしまったと思います。
はにさんも書かれている通り、Shift-JISをE-mailの送受信に使わないのは常識と思います。メール配送システム上でのFAQと言えます。MTA側の問題も絡みます。というか、
> これまですべて送信前にShift-JISにして送って、相手からは文字化けしたとの報告は皆無です。
これですが、私が知る範囲のMUAでは送信時のエンコードにShift-JISを指定出来るものはありません。MicrosoftのOEも、FireFoxも、Mail.appもGyazMailもその他有名どころのMUAはトラブルを避ける為に日本語エンコードとして選べるのはISO-2022-JPとUTF-8という実装になっている事が多いと思います。本当に今までShift-JISで送っていた(送れていた)んですか? これは単純に興味からですが何というMUAでしょう? 参考までにお教え下さると幸いです。
> 過去トピックを、ということですが、わたしも確認しました。でもデフォールトの設定方法は書かれていませんでした。
ですから、過去トピックをよくお読みください。固定する方法は現在有りません。それでみなさん苦労しているのです。本当に読まれたんですか? 全くもって同じ内容のトピックを繰り返しているだけですが?
usadil3さん、
はにさんはそう書かれていますが、常識とは思いません。過去ログをよくお読みください。常識とは言えないと書いてあるものがありますから。エンコードにShift-JISを指定したとは言っていません。はにさんに書いているように、どのようなコードで書いても、ネットに入る時には、JISになっていますから。Mac のMailで、「テキストエンコーディング」に、「自動」「ISO-2022-JP」「Shift-JIS」など、選べます。このうち、わたしはShift-JISで送っていた、その場合にWindowsユーザーとは何のトラブルもなかったということです。
ーですから、過去トピックをよくお読みください。固定する方法は現在有りません。
これは、はにさんのおっしゃられていることと違いませんか? はにさんは、defaultは、ISO-2022-JPだと言われてますよ。これまでの過去ログでも、デフォールトの設定方法は書かれていないのに、デフォールトは何何にした、という書き方がされていますよ。
>Mac のMailで、「テキストエンコーディング」に、「自動」「ISO-2022-JP」「Shift-JIS」など、選べます。
これは受信用じゃないですか。
そうそうたる達人の方々と話がかみ合っておいででないようですが,とりあえず
"標準エンコーディングの設定は?" #15, 2005/05/01 7:46pm
を試してみて下さい.TigerのMailでは送信コードはUTF-8がデフォルト(何も指定しないとそうなる)なので,それを変更してISO-2022-JPをデフォルトにする手だてです.本質的なことはそのトピック(Tigerが出てすぐでした)で言及されています.そうすればほとんど文字化けしなくなると思います.(目的は,Shift JISで送りたい,のではなく,文字化けしないようにしたい,ですよね?)
機種依存文字,半角カタカナなどは使わないようにしましょう.
# Tedさんがそこまでツッコむのならば、私もはっきりと書きます。失礼はお許しください。
> はにさんはそう書かれていますが、常識とは思いません。
Tedさんがどう感じようと常識ですしFAQですし、日本のメール配送システムはそれにならって構築されています。事実です。
> ネットに入る時には、JISになっていますから。Mac のMailで、「テキストエンコーディング」に、「自動」「ISO-2022-JP」「Shift-JIS」など、選べます。
話しが矛盾しています。良く理解できていないのではと推測します。「ネットに入る時」と書かれて有る事がまさにエンコードです。
確かにMail.appでメールを書き、送信前にテキストエンコードにShift-JISを指定すると、送信時つまりTedさんが言うところの「ネットに入る時」だけでなく、実際にShift-JISで配送されてしまいます。ISO-2022-JP(JIS)にはなりません。が、これは現状、現実的に、国内では推奨されていない、という事です。# この仕様も直して欲しい所です。
> わたしはShift-JISで送っていた、その場合にWindowsユーザーとは何のトラブルもなかったということです。
これに関しては私は「今まで幸いでしたね」としか言えませんが、はにさんが折角間違いを指摘して下さったのですから、素直に感謝すべき所ですよ?
>> ーですから、過去トピックをよくお読みください。固定する方法
>> は現在有りません。
> これは、はにさんのおっしゃられていることと違いませんか?
違いません。
はにさん> この話題は、文字化け、というような話題で、過去何度も出てきています。
と、ちゃんと書かれてます。読めば原因も対策があったのかどうかも、現状みなさんどうやっているのかも全てわかったはずです。
# Tedさん、一度冷静になってreplyを読み直してみてください。曲解されています。みなさん、良かれと思ってreplyをしているのですよ・・・。
> これは受信用じゃないですか。
多分本来そうなんでしょうけれど、どういう訳か、Mail.appでは送信前にも指定出来てしまうんですよ。で、Shift-JISでも送信出来てしまう、と。。。。
逆にこれを使えば、UTF-8に勝手になるのを防いで、必ずISO-2022-JPで送信する事は可能です。手間ですが。。。
現在NSPreferredMailCharsetはISO-2022-JPです。このTILは去年の7月に出たものですから、それ以降に変更したのだと思います。
Mail から Web Mail や携帯電話に送った送信メールが文字化けする
送信メールの文字コードをShift JIS固定にするには?