よろずやIT
PC・スマホ

文字化けの原因と直し方|Excel・CSV・メール・Webページ別の対処法

執筆・監修:よろずやIT編集部|編集方針を見る

結論:まずここだけ読めばOK

詳しい手順・原因は、この下で解説しています。

PC・スマホのイラスト

文字化けは「文字コードのずれ」で起きる

パソコンの中では、文字はすべて数字として保存されています。「この数字は、この文字」という対応表が文字コードです。文字化けは、ファイルを保存した時の対応表と、開く時に使った対応表が違うために起きます。

たとえば、「こんにちは」をUTF-8で保存したファイルを、Shift_JIS系(Windowsで古くから使われてきた方式)で読むと、次のように表示されます。

縺薙s縺ォ縺。縺ッ

文字が壊れたのではなく、同じ数字を、別の対応表で読んでいるだけなので、正しい対応表で開き直せば、元に戻ることが多くあります。

化け方で、原因の見当をつける

見た目 主な原因
「縺薙s…」のような、漢字とかなの羅列 UTF-8のデータを、Shift_JIS系で読んでいる
「���」「□」の羅列 Shift_JIS系のデータを、UTF-8で読んでいる、または対応する文字がない
「?」に置き換わっている 保存の時点で、文字が失われている(元に戻せないことがある)
「ã」「Ã」など、記号付きの欧文字の羅列 UTF-8のデータを、西欧の文字コードで読んでいる

場面別の直し方

ExcelでCSVを開いたら化けた

CSVファイルをダブルクリックで開くと、Excelが文字コードを自動判定するため、UTF-8のCSVが化けることがあります。次の手順で、文字コードを指定して読み込みます。

  1. Excelを開き、「データ」タブを選ぶ
  2. 「テキストまたはCSVから」(または「外部データの取り込み」)を選ぶ
  3. 対象のCSVファイルを選ぶ
  4. 表示されるプレビューの画面で、「ファイル元(文字コード)」を、「65001: Unicode (UTF-8)」に切り替える
  5. 文字が正しく表示されたことを確認して、「読み込み」を選ぶ

メニューの名称は、Excelのバージョンによって異なります。逆に、Excelで作ったCSVを他のシステムに渡して化ける場合は、保存時に「CSV UTF-8(コンマ区切り)」を選ぶと、改善することがあります。Excelの文字や数字の扱いについては、Excelの文字と数字の変換の記事も参考になります。

テキストファイルが化けた

Windowsの「メモ帳」で開くと、文字コードが右下(ステータスバー)に表示されます。別の文字コードで開き直す場合は、メモ帳の「ファイル」→「開く」の画面で、下部の「エンコード」を切り替えて開き直します。保存する時は、「名前を付けて保存」の画面で、エンコードを指定できます。

Webページが化けた

ブラウザの設定で、表示の文字コードを切り替えられるものもありますが、最近のブラウザは自動判定が優秀で、切り替え機能が見当たらないことも多くなっています。自分でサイトを運営している場合は、HTMLの <head> 内に、次の記述があるか確認してください。

<meta charset="UTF-8">

さらに、ファイル自体もUTF-8で保存されているか確認します。

メールが化けた

メールソフトの「表示」メニューなどから、文字コードを切り替えて、読めるものを探します。送信側のメールソフトが特殊な設定になっている場合は、相手に、UTF-8での再送を依頼する方法もあります。

ZIPを解凍したら、ファイル名が化けた

古い方式で圧縮されたZIPファイルを、別のOSや、解凍ソフトで開くと、ファイル名が化けることがあります。解凍ソフトに、ファイル名の文字コードを指定する設定があれば、変更を試してみてください。圧縮とアーカイブの基礎は、圧縮とアーカイブの違いで解説しています。

やってはいけないこと

開発・運営側:化けないためのポイント

プログラムやWebサイトを作る側は、「保存」「通信」「表示」の各段階で、文字コードをUTF-8にそろえるのが基本です。データの形式については、JSONとはの記事で、文字コードの扱いにも触れています。

振り返ると

文字化けは、データが壊れているのではなく、「読み方」が違っているだけのことが多くあります。化けたファイルは、上書きせずに、正しい文字コードを指定して開き直してみましょう。保存し直す時は、相手のソフトが対応する文字コード(多くの場合はUTF-8)を選ぶのが安心です。

関連記事:エラーメッセージの読み方

関連記事:ExcelでCSVを開くと文字化けする時の直し方

SHAREXLINEはてブ

よくある質問

Q.文字化けしたファイルは、元に戻せますか?

A.文字コードが違っているだけの場合は、正しい文字コードを指定して開き直せば、多くの場合は元に戻ります。ただし、化けた状態のまま上書き保存してしまった場合や、「?」「�」に置き換わっている場合は、元の文字情報が失われていて、戻せないことがあります。化けたファイルは、上書きせずに別名で開き直してください。

Q.文字コードとは何ですか?

A.文字を、コンピューターが扱える数字に対応づけるための、決まりごとです。同じ数字でも、決まりごとが違えば別の文字として解釈されます。日本語では、UTF-8、Shift_JIS、EUC-JPなどが使われてきました。

Q.UTF-8とShift_JISは、どちらを使えばよいですか?

A.現在は、世界中の文字を扱えるUTF-8が、Webや多くのシステムで標準的に使われています。ただし、古いシステムや、一部のソフトではShift_JISが使われていることがあります。やり取りする相手のソフトに合わせて選ぶのが基本です。

Q.メールの件名や本文が化けて読めません。どうすればよいですか?

A.多くのメールソフトには、表示する文字コードを切り替える機能があります。『表示』メニューなどから、文字コード(エンコーディング)を、UTF-8や日本語(JIS)など別のものに切り替えて、正しく表示されるか試してください。メニューの名称は、使っているソフトによって異なります。

関連記事

最新のIT関連書籍 トップ10

PR / 楽天市場の売れ筋ランキングを定期的に取得しています。価格は変動する場合があるため、購入前に各ストアでご確認ください。