どうぐばこノート

CSVの文字化けを直す

CSVファイルを開くと、文字コードを判定して中身を表示します。UTF-8(BOM付き)で保存し直せば、Excelでダブルクリックしても化けずに開けます。

CSVファイルを選ぶと、文字コードを判定して中身の先頭を表示します。

保存する形式

ExcelでダブルクリックしてCSVを開くなら、UTF-8(BOM付き)を選びます。

貼り付けた文章や開いたファイルはこのページの中だけで処理し、どこにも送信しません。保存するのは「この端末に設定を残す」にチェックを入れたときの設定だけで、文章やファイルは残しません。

ExcelでCSVが化けるわけ

CSVは文字だけのファイルで、どの文字コードで書かれているかという情報を持たないのが普通です。MicrosoftのサポートページによるとUTF-8のCSVは、先頭にBOM(UTF-8であることを示す3バイトの印)があればExcelでそのまま開けます。BOMのないUTF-8のCSVをダブルクリックで開くと、「縺」「繧」のような文字に化けることがあります。これは、UTF-8の文字をShift_JISとして読んだときに出る化け方です。

反対に、ExcelでつくったShift_JISのCSVを、UTF-8を前提にしたWebサービスやMacのソフトに読み込むと、「�」が並ぶ文字化けになります。どちらも、ファイルを正しい文字コードで保存し直せば直ります。

このツールで変換する手順

  1. 「CSVファイルを開く」で、化けるCSVを選びます。ファイルはこのページの中で読み、どこにも送りません。
  2. 文字コードを自動で判定し、先頭の20行を表で表示します。先頭にBOMがあればそれに従い、なければUTF-8として正しく読めるかを確かめ、読めなければShift_JISとして読みます。表が化けているときは「読む文字コード」を切り替えてください。
  3. 「保存する形式」で文字コードと改行を選び、「変換して保存」を押します。Excelでダブルクリックして開きたいときは、UTF-8(BOM付き)を選びます。

Shift_JISで保存するとき

取引先のシステムや古い会計ソフトなど、Shift_JISのCSVしか受け付けない読み込み先もあります。Shift_JISには絵文字や一部の漢字(𠮷など)がないため、そうした文字があると、何行目の何列目にどの文字があるかを一覧にして、保存を止めます。文字を直してから保存するか、「表せない文字を「?」にして保存する」を選んでください。

MacやiPhoneで入力した「〜」は、Windowsの「~」とは別の文字として記録されていて、Shift_JISでは表せません。「Macの記号をWindowsの同じ形の記号にする」にチェックを入れると、〜 ‖ ¢ £ ¬ と長いダッシュを、見た目が同じWindowsの記号に置き換えてから保存します。

改行の選び方

改行は、Windowsで使うならCRLF、MacやLinux、Webサービスに渡すならLFが一般的です。読み込み先の説明に指定があればそれに合わせてください。セルの中の改行(引用符で囲まれた中の改行)は、そのまま残します。

Excelで文字コードを選んで開く

変換せずにExcelで正しく開きたいときは、ダブルクリックではなく、Excelの[データ]タブから読み込みます。Microsoftのサポートページでは、[データ]→[データの取得と変換]→[テキストまたは CSV から]でファイルを選ぶ手順が案内されています。読み込みの画面では、ファイルの文字コードを選ぶ欄(MicrosoftのPower Queryの説明では「ファイルの配信元」)で、UTF-8(コードページ 65001)か日本語のShift_JIS(932)を選びます。Power Queryの説明によると、文字コードは推測されず、UTF-8と判断されるのはファイルの先頭にBOMがあるときだけです。

Excelで保存するときに化けないようにするには、ファイルの種類で「CSV UTF-8(コンマ区切り)」を選ぶ方法があります。Microsoftのページで説明が見つかったのはMac版(Excel 2016 for Mac)だけで、Windows版の手順を説明した公式のページは見つかりませんでした。

大きなファイル

変換は100万字ずつに分けて進めるので、大きなファイルでもページが固まりにくくなっています。このサイトでは、約33MBのCSV(33万行)をパソコンのChromeで開き、1秒ほどで表示し、UTF-8(BOM付き)とShift_JISへの変換もそれぞれ2秒以内に終わることを確かめました。スマートフォンや、それより大きなファイルでは、端末のメモリによって時間がかかったり、開けなかったりすることがあります。

確認した資料

確認日 2026-10-24。Excel の画面の名前は、Microsoft のページの表記に合わせています。文字コードの変換は WHATWG Encoding Standard の表(index ファイル、2024年9月18日版)をそのまま使っています(ライセンス文)。