一般的なCVSファイルは、ダブルクリックして直接Excelで開くことができます。
しかし Unicode(UTF-8)で作成されたCSVファイルの場合、文字化けしてしまいます。
えらいこっちゃですね。
ではなぜ文字化けしてしまうのか。どうすればUnicodeのCSVファイルを開けるのか。
安心してください!すぐ直ります。
目次
Excelでの文字化けを解消する方法
手っ取り早く文字化けを解消するには、テキストファイルにBOMを付与すれば解決です。Windowsの標準アプリである、メモ帳を使えばBOMが付与できます。
- 対象のCSVデータをWindows標準のメモ帳で開く
CSVファイルを右クリックして[プログラムから開く] → [メモ帳]を選択します。
- すぐに[ファイル] → [名前をつけて保存]を選択
- エンコードを[UTF-8 (BOM 付き)]を選択して、上書きする
- CSVファイルをExcelで開く
文字化けが直りました!
文字化けする理由
ExcelがCSVファイルをUnicodeと判断していない
文字化けの主な原因は、ExcelがUnicode(UTF-8やUTF-16)のテキストファイルをShift_JISとして解釈し、表示してしまうことです。これはExcelのバグや設定の問題ではなく、テキストファイル側にUTF-8であることを示す情報(BOM:Byte Order Mark)が欠けているために発生します。
BOMは、Unicodeのテキストファイルの先頭にある特定のバイトコードで、これが存在することでファイルがUTF-8やUTF-16であることが判別可能です。しかし、全てのファイルにBOMが付与されているわけではなく、BOMが存在しない場合も多いです。
多くのテキストエディタはBOMの有無に関わらず文字コードを識別して適切に表示しますが、ExcelはBOMが付いていないCSVファイルやテキストファイルを開くと、文字コードを正しく認識できず、文字化けが発生する場合があります。一方で、BOMが存在すると正常に動作しないアプリケーションも存在します。