CSV文字化け修正・文字コード変換
Excel で開くと文字化けする CSV を直す
Excel で開くと文字化けする CSV を、文字コードを自動で判定して直します。Shift_JIS と UTF-8 の相互変換もできます。インストール・会員登録不要、無料でお使いいただけます。
ファイルはお使いのブラウザ内だけで処理され、サーバーには送信・保存されません。
使い方
- STEP 1
CSV を選択
文字化けする CSV を枠にドロップするか、クリックして選択します。複数ファイルをまとめて選べます。
- STEP 2
プレビューを確認
文字コードは自動で判定します。プレビューが文字化けしている場合は、元の文字コードを選び直してください。
- STEP 3
変換してダウンロード
変換後の文字コードを選んでダウンロードします。Excel で開くなら「UTF-8(BOM付き)」がおすすめです。
CSV の文字化けが起きる場面
- EC サイトや予約システム、クラウドサービスから出力した CSV を Excel で開いたら文字化けした
- Mac で作った CSV を、Windows の Excel や会計ソフトで開いたら読めなかった
- 業務システムに取り込もうとしたら「文字コードが違う」とエラーになった
文字化けが起きる仕組み
CSV ファイルの中身は、文字そのものではなく「バイト列」と呼ばれる数値の並びです。文字をバイト列に置き換えるルールが「文字コード」で、同じ「顧客名」でも UTF-8 と Shift_JIS ではまったく違うバイト列になります。
文字化けは、ファイルを保存したときの文字コード(実体)と、開くソフトが想定する文字コード(読み取り方)がずれたときに起きます。データが壊れているわけではなく、読み方を間違えているだけなので、正しい文字コードで読み直せば元に戻ります。
-
実体と読み取り方が一致 → 正しく表示
元の文字 顧客名UTF-8 で保存ファイルの中身(実体)E9 A1 A7 E5 AE A2 E5 90 8DUTF-8 として読む画面の表示 顧客名 -
UTF-8 の CSV を Excel で開く → 文字化け
元の文字 顧客名UTF-8 で保存ファイルの中身(実体)E9 A1 A7 E5 AE A2 E5 90 8DShift_JIS として読む 日本語版 Excel の既定の読み方画面の表示 鬘ァ螳「蜷� -
Shift_JIS の CSV を Web サービスや Mac で開く → 文字化け
元の文字 顧客名Shift_JIS で保存ファイルの中身(実体)8C DA 8B 71 96 BCUTF-8 として読む画面の表示 �ڋq�� -
BOM 付き UTF-8 にすると → Excel でも正しく表示
元の文字 顧客名UTF-8(BOM付き)で保存ファイルの中身(実体)EF BB BF E9 A1 A7 E5 AE A2 …先頭の EF BB BF が「UTF-8 です」という目印(BOM)目印を見て UTF-8 として読む画面の表示 顧客名
このツールは、ファイルの中身(バイト列)から実体の文字コードを推定し、開く側の読み取り方に合わせた文字コードで保存し直します。Excel で開くなら、目印(BOM)付きの UTF-8 にするのが確実です。
よくある質問
Excel で CSV を開くと文字化けするのはなぜですか?
日本語版の Excel は、BOM(文字コードの目印)のない CSV を Shift_JIS として読み込みます。Web サービスなどから出力された UTF-8 の CSV を開くと、文字コードの食い違いで文字化けします。UTF-8(BOM付き)に変換すると、Excel で正しく開けるようになります。
どの文字コードに変換すればよいですか?
Excel で開くだけなら「UTF-8(BOM付き)」がおすすめです。会計ソフトや古い業務システムに取り込む場合は、取り込み先の指定に合わせてください。多くの国内向けシステムは「Shift_JIS」を指定しています。
Shift_JIS に変換すると「?」になる文字があります。
絵文字や一部の旧字体・外国語の文字など、Shift_JIS では表せない文字は「?」に置き換わります。該当する文字と行番号を画面に表示するので、取り込み前に元データを修正してください。
データの内容が変わることはありますか?
変わりません。文字コードと改行コードだけを変換し、区切り文字や引用符、セルの値はそのまま保ちます(Shift_JIS で表せない文字を除く)。
ファイルはサーバーにアップロードされますか?
アップロードされません。読み込みから変換まで、すべてお使いのブラウザの中だけで処理しています。顧客名簿など個人情報を含む CSV も安心してお使いいただけます。