パソコンで表示されない漢字がある原因と対処法【症状別に解説】

プログラミング・IT

パソコンで文章を開いたとき、一部の漢字が「□(豆腐)」や「?」に化けてしまう、あるいは人名・地名に含まれる珍しい漢字が打てない・表示できない——こうしたトラブルには、複数の異なる原因があります。
症状によって対処法が変わるため、まず「どのような状態になっているか」を確認することが解決の近道です。
この記事では、症状別に原因を整理し、それぞれの対処法を解説します。

スポンサーリンク

症状別:まず自分の状況を確認する

症状疑うべき原因
漢字が□(四角い豆腐)になるフォントが対応していない・日本語補助フォント未インストール
漢字が別の記号や文字列に化ける(例:ã‚ãã™ãã¡ã)文字コードの不一致
人名・地名の特定の漢字だけが出ないJIS第3・4水準漢字の対応不足
ウェブサイトの一部の漢字だけが化けるフォントの未インストール・文字コードの指定ミス
受け取ったファイル全体が文字化けしている文字コードの不一致・機種依存文字の使用

原因①:フォントが対応していない(豆腐が表示される)

漢字が「□」になる現象は、日本語では豆腐と呼ばれます。
英語圏でも「tofu」という呼び名が広まるほど、フォントが対応していない場合の文字化けを指す国際的な用語になっています(文字化けテスター – instant tools)。

この現象が起きる仕組みはシンプルです。
パソコンで文字を表示するには「フォントファイル」が必要で、そのフォントが特定の漢字の形データを持っていない場合、代わりに□が表示されます(Microsoft サポート「Windows 10 の一部のアプリでテキストの一部が正方形で表示される理由」)。

特にWindowsでは、日本語表示に必要な「MSゴシック」や「メイリオ」などの日本語補助フォントが、日本語版以外のWindowsにはあらかじめインストールされていない場合があります。
海外版Windowsを使っていたり、言語設定を途中で変更した場合に起きやすいです(Microsoft Learn「日本語版以外の Windows 10 を利用した場合、アプリケーションの日本語表記が正しく表示されない場合があります」)。

対処法:日本語補助フォントをインストールする(Windows 10/11)

  1. 「スタートボタン」→「設定」→「システム」→「オプション機能」を開く
  2. 「機能の追加」をクリックして「日本語補助フォント」を検索する
  3. 選択して「インストール」をクリックし、再起動する

なお、この操作はインターネット接続が必要です。
オフライン環境ではインストールできない仕様となっています。


原因②:文字コードの不一致(漢字が別の文字列に化ける)

パソコンは文字をそのまま保存しているわけではなく、すべての文字に番号(コード)を割り振って数字として処理しています(マーケトランク「文字化けはなぜ起こる?」)。

文字コードには、日本語向けのシフトJIS(Shift_JIS)、メール向けのISO-2022-JP(JISコード)、国際標準のUTF-8など複数の種類があります。
作成した環境の文字コードと、開いた環境の文字コードが一致しないと、本来の漢字とはまったく違う文字列が表示されます。

代表的な文字化け例として、「あいうえお」がShift-JISで保存されたテキストをUTF-8として開くと、「ã‚ãã™ãã¡ã」のような意味不明な文字列になります。

WindowsとMac間でファイルをやり取りしたり、古いシステムで作成したCSVファイルをExcelで開いたりするときに特に発生しやすいです(ウェブラボ「文字化けはなぜ起こる?よくあるトラブル事例を徹底解説」)。

対処法①:ブラウザの文字エンコーディングを変更する

ウェブサイトで文字化けが発生している場合、ブラウザの文字コード設定を変更することで改善できます。
ChromeとEdgeには文字エンコーディングを直接変更する機能がないため、「テキストエンコーディング」などの拡張機能をインストールして、右クリックから「日本語(自動選択)」または「Unicode(UTF-8)」を選択します。

対処法②:Excelで文字コードを指定してCSVを開く

文字化けしたCSVファイルをExcelで開く場合は、直接ファイルをダブルクリックせず、以下の手順で開くと文字コードを指定できます。

  1. Excelを起動し、「データ」→「テキストまたはCSVから」を選択する
  2. ファイルを選択し、「ファイルの変換」でエンコーディングを「日本語(Shift-JIS)」またはUTF-8に変更する
  3. プレビューで正しく表示されていることを確認して「読み込み」をクリックする

対処法③:メモ帳で文字コードを変換して保存し直す

文字化けしているテキストファイルの場合は、メモ帳で開いて「名前をつけて保存」から文字コードを「UTF-8」または「ANSI(シフトJIS)」に変更して保存し直すと解消されることがあります。


原因③:機種依存文字(環境依存文字)の使用

機種依存文字とは、特定のOSや環境でしか正しく表示・入力できない文字のことです。
別の環境で開くと、「?」や「□」に変わってしまいます(ウェブラボ「文字化けはなぜ起こる?」)。

代表的な機種依存文字は以下のとおりです。

  • 丸囲み数字(①②③ など)
  • ローマ数字(Ⅰ Ⅱ Ⅲ など)
  • 単位記号(㎝ ㎞ ㎏ ℃ など)
  • 半角カタカナ(一部の環境で化けやすい)

これらは「環境依存文字」とも呼ばれ、Windowsで入力できても他の環境では文字化けを起こすため、メールやファイルのやり取りでは使用を避けることが推奨されています。


原因④:JIS第3・第4水準漢字が表示できない(人名・地名の珍しい漢字)

日本語の文字コード規格には「水準」という区分があります。

  • JIS第1・第2水準:一般的な漢字約6,000字(多くのフォントが対応)
  • JIS第3・第4水準:JIS X 0213で追加された約4,000字(人名・地名・古語に使われる珍しい漢字)

戸籍に使われる一部の人名漢字や、神社・地名に含まれる難読漢字は第3・第4水準に含まれており、古いフォントやShift-JISのみに対応したシステムでは表示できないことがあります(コニカミノルタ「「外字」ってなんだろう?」)。

また、UnicodeにはCJK統合漢字拡張と呼ばれる領域があり、中国・日本・韓国語共通の漢字が約9万字以上収録されています。
この領域の漢字は、古典文書や歴史的な人名に登場することがありますが、一般的なフォントでは対応していないため豆腐になります(CJK統合漢字 – Wikipedia)。

対処法:対応フォントを使用する

第3・第4水準漢字やCJK拡張漢字を表示するには、これらの文字に対応したフォントが必要です。

Googleが開発したNoto CJK(Noto Serif CJK JP / Noto Sans CJK JP)は、すべての言語で豆腐をなくすことを目指して開発されたフォントです。
「no more tofu(豆腐をなくす)」の略が名前の由来で、第3・第4水準漢字を含む多くの漢字に対応しています(文字化けテスター – instant tools)。


原因⑤:システムロケールの設定が日本語になっていない

システムロケールとは、パソコンが使用する言語・地域設定のことです。
この設定が日本語以外になっていると、アプリが文字コードをShift-JIS以外で解釈してしまい、日本語が化けることがあります。
中古パソコンや、海外版Windowsを使っている場合に起きやすいです(Aprico「Windows10の文字化けの直し方」)。

確認・変更手順(Windows)

  1. 「コントロールパネル」→「時計と地域」→「地域」を開く
  2. 「管理」タブをクリックし、「システムロケールの変更」をクリックする
  3. 「日本語(日本)」を選択し、OKをクリックして再起動する

原因⑥:フォントキャッシュの破損

フォントキャッシュとは、フォントの表示を高速化するために保存された一時ファイルです。
これが破損すると、特定の文字だけが正しく表示されなくなることがあります(データ復旧.com「Windows10で文字化けが起こる原因と対処法」)。

対処法:フォントキャッシュを削除する

  1. すべてのアプリを閉じる
  2. エクスプローラーで C:\Windows\system32\ を開く
  3. 「FNTCACHE.DAT」というファイルを削除する
  4. パソコンを再起動する(再起動時にキャッシュが自動的に再生成される)

まとめ:症状別の対処法一覧

症状主な対処法
□(豆腐)が表示される日本語補助フォントのインストール・対応フォントへの切り替え
全体が謎の文字列になる文字コード(エンコーディング)の変更
一部だけ別の文字になる機種依存文字の確認・送信者に再送依頼
人名・地名の特定漢字のみNoto CJKフォントなどの対応フォントを使用
アプリ全体の日本語が化けるシステムロケールを「日本語(日本)」に変更
特定の漢字だけ□になるフォントキャッシュ(FNTCACHE.DAT)を削除

参考情報

この記事で参照した情報源

一次資料・公式ドキュメント

信頼できる二次資料

コメント

タイトルとURLをコピーしました