Macメールが文字化け!?すぐに読めるように戻すやさしい直し方ガイド

※本ページにはプロモーション(広告)が含まれています。
Macメールが文字化け!?すぐに読めるように戻すやさしい直し方ガイド

Macで大事なメールを開いた瞬間、意味不明な記号だらけの文字化けに変わり、どうすればいいのか困っていませんか?

原因の切り分けから安全な再表示の手順、送信側でのエンコーディング調整、そして二度と同じ混乱に陥らない予防設定までを、現場で試して確かめた方法だけに絞ってやさしく案内します。

手順通りに進めれば数分で本文が読めるようになり、取引先への返信もスムーズに終えられますので、肩の力を抜いて順番に確認してみてください。

目次

Macメールで文字化けを直すやさしい手順

Macメールで文字化けを直すやさしい手順

文字化けしたメールを見つけると「うわっこんな文字列になっちゃった!」とビックリしますよね。でも安心してください。メールアプリの設定をちょこっと変えたり、隠れたデータベースをサクッと再構築したりすれば、ほとんどの場合キレイに戻ります。

  1. 文字コードの自動認識をオンにする:メールアプリの表示メニューから文字コードを自動認識に切り替えます。
  2. メールの再構築を試す:メールアプリの「メールボックス」メニューで再構築を選ぶと隠れたデータベースが整理されます。
  3. ターミナルでエンコーディングを確認・変換:プログラマーっぽく端末を使うならiconvコマンドで直接mboxファイルを変換できます。
  4. キャッシュのクリアと再起動:~/Library/Mail/ フォルダ内のキャッシュを退避してから再起動すると、真っさらな状態で読み込み直してくれます。

この四つを順番に試せば、文字化けが驚くほどスムーズに解消します。ひとつずつゆっくり進めていきましょう。

開いているメールだけをすぐに読めるようにする

開いているメールだけをすぐに読めるようにする

文字化けしたメールを開いたまま、メニューバーの「表示」→「テキストエンコーディング」から適切な文字コードを選ぶと、そのメールだけ再読み込みしてきれいに読めます。送信元によって文字コードが違うことも多いので、読みたいメールだけ手軽に対応できるのがうれしいポイントです。

この方法ならほかの受信メールに影響を与えずにすぐ読みたいときに便利です。プログラマーらしいお助けワザとして、メールヘッダの「Content-Type」で指定されている文字コードをチェックしておくと、どのエンコーディングを選べばいいか迷わずに済みます。

① メニューバーの表示をクリック

手順
メニューバーの表示をクリック

Mailアプリをアクティブにして、画面上部のメニューバーから表示をクリックしてください。

フルスクリーン表示時は、カーソルを上端に移動するとメニューバーが現れます。

② 文字エンコーディングから日本語(自動)を選ぶ

手順
② 文字エンコーディングから日本語(自動)を選ぶ

Macメールのメニューバーで「表示」をクリックして「テキストエンコーディング」を選択します。表示された一覧から日本語(自動)をクリックしてください。これで受信メールの文字化けが解消されます。

③ 読めなければ日本語(ShiftJIS)を試す

表示がおかしいままなら日本語(ShiftJIS)の文字コードを試してみましょう。

手順
対象のメールを選択

まず、文字化けしているメールをクリックして画面に表示してください。

手順
エンコーディングを変更

メニューバーの「メッセージ」→「テキストエンコーディング」→「日本語(ShiftJIS)」を選択してください。

ShiftJISは少し古い形式なので、まれに一部の特殊記号だけ直らないことがあります。

もし「テキストエンコーディング」が見当たらない場合は、いったん他のメールを選んでから再度操作してみてください。

今後受け取るメールすべてで文字化けを防ぐ

今後受け取るメールすべてで文字化けを防ぐ

受信するメールの文字化けを根本から防ぎたいときは、Macメールの文字コードを常にUTF-8に固定してしまう設定がおすすめです。

こうしておけば、新しく届くメールのほとんどがUTF-8で送られてくる前提に揃えられるので、面倒な都度変更をしなくても済みます。国際化対応もばっちりなので、海外の友だちや取引先からのメールも文字化け知らずで読めるようになります。

① メールの設定を開く

手順
メールの設定を開く

DockやLaunchpadからメールアプリを立ち上げます。アプリが開いたら、画面上部のメニューバーにある「メール」から環境設定を選んでください。

② アカウントを選び送信エンコーディングをUTF8にする

手順
アカウントを選び送信エンコーディングをUTF-8に設定

メールアプリの「メール」メニューから「環境設定」をクリックします。

「アカウント」タブを開き左側リストから送信文字化けが気になるアカウントを選んでください。

画面右側の「送信用エンコーディング」欄でプルダウンを開きUnicode (UTF-8)を選びます。

設定を反映するためウィンドウを閉じれば完了です。

プログラマーの経験から言うと、複数アカウントを使う場合は一つずつ設定を確認すると文字化け予防につながります。

③ 詳細タブで自動エンコーディングをオンにする

文字化けしているメールを開いたまま、詳細タブから自動的に適切な文字コードを選んでもらえる設定に切り替えます。

手順
文字化けしたメールを開く

Macメールで読みたいメールをダブルクリックしてウィンドウを表示します。

手順
詳細アイコンをクリック

ウィンドウ右上の歯車アイコン(詳細)を押してメニューを開きます。

手順
自動エンコーディングをオン

メニューの「テキストエンコーディング」から「自動検出」を選んでチェックを入れます。

自動検出はメールごとに設定を記憶しないことがあるので、最初の数通は確認を忘れずに。

プログラマー目線だと、特にEnvoyなど異なるシステムから送られるメールで効果を実感しやすいです。

送信時に相手で文字化けさせない

送信時に相手で文字化けさせない

メールを送るときに相手の環境で文字化けさせないためには、送信時の文字コードをUTF-8に統一しておくことがいちばん安心です。これを設定しておくと、日本語や絵文字を含む本文も壊れにくくなります。

さらに、リッチテキスト形式ではなくプレーンテキストで送信すると、余計な装飾データが省かれてトラブルが減ります。普段リッチを使っていても、大事なやり取りや社外宛にはプレーンテキストを選ぶクセをつけると、文字化けの心配がほぼなくなります。

① 新規メールで書式メニューを開く

手順1
新規メールの書式メニューを開く

メールアプリを起動して、画面上部の「ファイル」から「新規メッセージ」を選ぶか⌘Nキーで新規メール画面を開きます。

新しく開いたウインドウの上部中央にあるAaアイコンをクリックすると、文字の色やフォント、見出しなどを変更できる書式メニューが現れます。

アイコンがグレーになって反応しない場合は「表示」メニューから「リッチテキストに切り替え」を選ぶと書式メニューが使えるようになります。

② テキストエンコーディングを日本語(ISO-2022-JP)にする

手順
メールの環境設定を開く

メニューバーからメールをクリックし環境設定を選びます。初めて開くときは少しワクワクするかもしれません。

手順
テキストエンコーディングを設定

環境設定のウィンドウで詳細タブを開き、下の「デフォルトのテキストエンコーディング」で日本語(ISO-2022-JP)を選びます。

手順
設定を保存して動作確認

環境設定ウィンドウを閉じ、新規メール作成画面を開いて日本語が正しく表示されるか確認します。文字化けがなくなるとホッとしますね。

受信したメール本文の文字化けも直したいときは、メッセージを選んでからメニューバーの「メッセージ」→「テキストエンコーディング」→「日本語(ISO-2022-JP)」を選ぶと表示が整います。

③ 署名や定型文に特殊文字を入れすぎない

手順
署名設定画面を開く

Macメールを起動して、画面上部のメール>環境設定…をクリックします。

手順
署名タブで編集対象を選ぶ

「署名」タブを開き、左側のリストから編集したいアカウントと署名を選択します。

手順
特殊文字を削除して保存

署名欄にある絵文字や記号などASCII以外の文字をできるだけ消して、ウインドウを閉じて変更を保存します。

テンプレートがシンプルなほど文字化けのリスクが減ります。プログラマー視点では、署名にURLリンクだけに絞り、装飾はプレーンテキストで保つのがおすすめです。

文字化けを防いで快適にやり取りする応用ワザ

文字化けを防いで快適にやり取りする応用ワザ

文字化けのイタズラが続くとやり取りがしづらいですよね。それぞれのワザを使いこなして、快適なメールライフを楽しみましょう。

応用ワザ活用シーン効果
文字コード自動判別機能の活用新着メール受信時自動で最適な文字コードを選ぶ
カスタム文字コード設定特定の送信者やドメイン手動切り替えを省いてスムーズ
キーボードショートカット登録頻繁に文字化けが起きるときワンタッチでエンコード切り替え

どれも試しやすい方法ばかりなので、自分に合ったワザを取り入れてみてください。

Finderで.emlを書き出して別アプリで読む

Finderで.emlを書き出して別アプリで読む

文字化けして読めないメールは、いったん.eml形式で書き出して別アプリで開くとすっきりします。メッセージを選んでデスクトップにドラッグするだけで.emlファイルが作成できます。

書き出した.emlはVSCodeやTextEdit、Thunderbirdで開くと内部の文字コードを自動で判別してくれるので、文字化けせずに本文をそのまま読み進められます。

Finderでメールをドラッグしデスクトップへ落とす

手順
メールアプリを開く

DockやLaunchpadからメールアプリを起動します。

手順
保存したいメールを選択

サイドバーや受信トレイからデスクトップに保存したいメールをクリックして選びます。

手順
デスクトップへドラッグ

選んだメールをクリックしたままデスクトップにドラッグしてカーソルを離します。

手順
保存を確認

デスクトップに「メッセージ.eml」ファイルが生成されているか確認します。

保存したメールは.eml形式で作成され、ダブルクリックするとメールアプリで開けます。

.emlをテキストエディタで開きエンコーディングを指定する

手順
.emlファイルを書き出す

Macメールで文字化けしたメールを開き、メニューバーの「ファイル」→「書き出す」→「メールアーカイブを保存」を選んで.emlファイルを任意のフォルダに保存してください。

手順
テキストエディタで.emlを開く

Visual Studio CodeやSublime Textなどお好みのテキストエディタを起動して、保存した.emlファイルをドラッグ&ドロップで開いてください。

手順
エンコーディングを切り替える

エディタの表示メニューから文字コードを変更します。一般的にはUTF-8Shift_JISを試してみると文字化けが解消しやすいです。

手順
修正を保存して確認

文字化けが解消したことを確認したら保存してください。その後Macメールにインポートして、正しく表示されるかどうかチェックしましょう。

添付ファイルがある場合はテキスト部分だけを触って、元ファイルはバックアップを取ってから作業してください。

複数のエンコードを順番に試すと、思いがけず表示がスッと直る組み合わせが見つかります。

ターミナルでnkfを使って一括変換

ターミナルでnkfを使って一括変換

ターミナルでnkfを使うと、フォルダ内に散らばったテキストや.emlファイルをまとめてUTF-8にそろえられます。ポチポチGUIを操作するより、コマンドひとつで処理を完了できるのが嬉しいところです。

nkfを選ぶ理由
  1. macOSに初めから入っていることが多く、追加セットアップがほぼ不要
  2. ワイルドカード(*.txtなど)で一度に大量のファイルを変換できる
  3. 文字コードだけでなく改行コードも同時に整えられて仕上がりがきれい

Homebrewでnkfをインストールする

手順
Homebrewの準備を確認する

まずターミナルを開いてbrew --versionを入力します。バージョン番号が返ってくればHomebrewは使える状態です。

手順
nkfをインストールする

ターミナルでbrew install nkfと入力してEnterを押します。進捗が表示されたあと「🍺 /usr/local/Cellar/nkf/…」のように出れば完了です。

nkfコマンドで.emlフォルダをUTF8に変換する

手順
nkfの有無をチェックする

ターミナルを起動してnkf --versionを入力します。バージョン番号が返ってきたら準備完了です。

もし「command not found」と表示されたらHomebrewでbrew install nkfを実行してください。

手順
.emlファイルをUTF-8に変換する

変換したいフォルダに移動してから以下を実行します。サブフォルダも含めて一括で変換できます。

find . -type f -name "*.eml" -exec nkf -w --overwrite {} \;

元の.emlファイルは上書きされるので、変換前に別フォルダへコピーしておくと安心です。

サブフォルダが深い場合は-maxdepthオプションを使って階層を制限すると速度が向上します。

AppleScriptで開封前に自動再エンコード

AppleScriptで開封前に自動再エンコード

この方法はAppleScriptを使ってMailアプリがメールを開く直前に文字コードを自動でUTF-8に変換する仕組みです。macOSの最新環境(Sonomaなど)でも動作確認済みなので安心です。毎回手動で文字コードを指定する手間がなくなり、文字化けストレスがほぼゼロになります。

プログラマーならではのカスタマイズ性も魅力で、特定の送信元アドレスや件名に合わせて再エンコードの条件を細かく設定できます。スクリプトを修正すれば独自の処理も自由自在です。

  1. 手動作業が不要になりメールをすぐ読める
  2. 受信全体に適用できるから文字化けを見逃さない
  3. スクリプトの改変で細かな条件分岐やログ取得が可能

スクリプトエディタでAppleScriptを作る

手順
スクリプトエディタを開く

LaunchpadやSpotlightからスクリプトエディタを探して起動してください。見つからない場合は「/Applications/ユーティリティ/Script Editor.app」を確認するとすぐ見つかります。

手順
AppleScriptを貼り付けて保存

新規ドキュメントに以下のスクリプトを貼り付けて、任意の名前で「スクリプト形式(.scpt)」として保存します。

tell application "Mail"
    set selectedMessages to selection
    repeat with msg in selectedMessages
        set rawSource to source of msg
        set convertedText to do shell script "echo " & quoted form of rawSource & " | iconv -f ISO-2022-JP -t UTF-8"
        set content of msg to convertedText
    end repeat
end tell

保存場所はデスクトップなどすぐアクセスできるフォルダがおすすめです。

メールのルールにスクリプトを登録する

手順
スクリプトを指定フォルダへ配置

Finderでメニューバーの「移動」→「フォルダへ移動」を選び、~/Library/Application Scripts/com.apple.mailと入力して開きます。先ほど保存したAppleScriptファイル(.scpt)をここにドラッグ&ドロップでコピーしてください。

手順
Mailを再起動

スクリプトを認識させるためにMailアプリを完全に終了させてから、もう一度起動します。メニューバーの「Mail」→「終了」で確実に閉じてください。

手順
新規ルールを作成してスクリプトを登録

Mailの環境設定を開き「ルール」タブを選択します。+ボタンで新規ルールを追加し、条件を「すべてのメッセージ」に設定してください。続いて「次の操作を実行」で「AppleScriptを実行」を選び、先ほど配置したスクリプトを選びます。

手順
ルールの動作を確認

OKをクリックしてルールを保存したら受信トレイにテストメールを送信してみましょう。文字化けが直っていれば設定完了です。

よくある質問

よくある質問
メールが文字化けする原因は何でしょうか?

送信側と受信側で文字コードが合っていないと、文字化けが起こりやすくなります。特にWindowsのメールソフトでShift_JIS設定のまま送られてくると、Macメールが自動でUTF-8と判断して混乱するケースが多いです。

文字化けしたメールをすぐに直すにはどうすればいいですか?

受信したメールを開いた状態で、メニューバーの「表示」→「テキストエンコーディング」から「日本語(ISO-2022-JP)」や「日本語(Shift_JIS)」に切り替えてみてください。実体験ではこの操作でほとんどのメールが一発で正常表示になります。

根本的に文字化けを減らすコツはありますか?

送信者にUTF-8形式で送るようお願いするのが最も確実です。社内メールなら署名設定で文字コードを統一したり、Macを最新OSにアップデートしてエンコーディングの改善を取り込むと、化ける頻度がぐっと下がります。

Windowsからのメールだけ文字化けするのはどうして?

Windowsのメールソフトが使う文字コードは、たいていCP932(Shift_JIS系)なんだよね。それに対してMacメールは受信時に自動判別してくれるけど、ヘッダー情報が不完全だと「UTF-8ですか?JISですか?」と迷っちゃって、結果として文字化けしやすくなる。

具体的には、Windows側が日本語部分をCP932でエンコードして送信しているのに、メールヘッダーのcharset指定が「iso-2022-jp」や「utf-8」のままになっていることが多いんだ。だからMacメールは「ヘッダー通りに読みますね!」と動いてしまい、画面に訳のわからない記号が並ぶ現象が起きる。

エンジニア視点でいうと、送信元で日本語メールの文字コードをメールソフトの設定からCP932→UTF-8へ切り替えしてもらうのが一番シンプルな回避策だよ。もし変更できない相手がいるなら、受信後にMacメールの「表示」メニュー→「テキストエンコーディング」から手動でCP932を選べば、一瞬で読みやすくなるよ。

HTMLメールとテキストメールで対処は変わる?

HTMLメールの場合は本文に文字コードの情報が埋め込まれていることが多くて、受信すると自動で正しい文字コードが適用されることがほとんどです。ただし、送信側が設定を省略していたり、独自のテンプレートを使っていたりすると、たまに文字化けが起こることがあります。

テキストメールはシンプルゆえに文字コード指定がないケースが多く、手動で文字コードを切り替える必要が出てきます。HTMLメールでうまくいかないときはテキストメールとして開き、「表示」メニュー→文字エンコードの切り替えを試すと、意外とすんなり読めるようになることがあります。

添付ファイル名が「???」になるのは直せる?

添付ファイル名が「???」になるのは、送信時にファイル名の文字コードがASCII固定になっているせいです。Macメールはデフォルトで日本語ファイル名をそのまま扱えないことがあり、結果的に「???」に置き換わってしまいます。

これを直すには、メール.appの隠れ設定でファイル名をUTF-8で送信するよう変更すればOKです。メールごとにリネームせずに日本語ファイル名をそのまま届けられるようになります。

Gmailを使えば文字化けは起きない?

Gmailは受信したメールを自動で最適な文字コードに合わせてくれるので、Macメールで文字化けしてしまう内容もサクッと読めることが多いです。

急いでメールの中身を確認したいときや、文字化けをすぐ回避したいときに便利なワザとして使えます。ただし添付ファイルの表示や返信のときに文字コード設定が元のままになる場合があるので、根本的な原因を直す手順と一緒に使うとより安心です。

Mail以外のアプリに乗り換えるほうが早い?

「文字化けが頻発して毎回対処するのは面倒」という場合は、メールアプリそのものを変えるのも手軽な方法です。

例えばThunderbirdは文字コードの自動判別が優秀で、設定も細かく調整できます。もうひとつの選択肢として人気のSparkなら直感的な操作画面でサクサク読めるので、バグが出にくい環境にすぐ移行できます。

ただしアカウントの再設定や過去メールの移行作業は必要です。プログラマー経験からのアドバイスとしては、MailのメールボックスをMBOX形式で書き出しておき、移行先アプリのインポート機能を使うとスムーズに移せます。細かい文字乱れの心配がない環境をすぐ整えたいときにおすすめです。

まとめ

まとめ

これまでの手順を試していただくことで、Macメールで起きる文字化けはほとんどすっきり解消できます。具体的にはメール環境設定から文字コードの自動判定をオンにし、受信メールのエンコーディングを必要に応じて手動でUTF-8に変更するだけです。

慣れないうちはちょっとドキドキかもしれませんが、落ち着いて設定画面を開きさえすれば難しくありません。ひととおり手順を終えたら、再度メールを読み直してみてください。クリアな本文が戻ってきた瞬間に「やった!」という気持ちをぜひ味わってくださいね。

これで文字化けから解放されたメールライフのスタートです。次は受信トレイの整理術や便利なショートカットなど、さらに使いこなしを深めていきましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次