CSV 文字コード変換ツール
English versionCSVなどのテキストファイルを選ぶと、UTF-8・Shift_JIS・EUC-JP・UTF-16のどれかを判定して先頭の数行を表示し、指定した文字コードで保存し直したファイルを作ります。処理はブラウザ内で完結し、ファイルはどこにも送信されません。
- UTF-8(BOMあり・なし)、UTF-16LE/BE、Shift_JIS(CP932)、EUC-JPを判定
- UTF-8(BOM付き) — 日本語WindowsのExcelがダブルクリックで正しく開ける唯一のUTF-8
- UTF-8(BOMなし) — Unity・Unreal・Godot・Gitやビルドツールが期待する形
- Shift_JIS(CP932)・EUC-JP — 古い日本語ツール向け。収録されていない文字は変換前に一覧表示
- 改行コード(CRLF / LF)を表示。Windowsを経由したファイルの差分が膨らむ原因が分かります
- 変えるのは文字コードだけ。列・引用符・改行は読み取ったまま書き戻します
ExcelがUTF-8のCSVを化けさせる理由
日本語WindowsのExcelは、ファイルの先頭にBOM(バイト順マーク)がない限り、CSVをシステムの文字コードであるShift_JIS(CP932)として読みます。BOMのないUTF-8のファイルはShift_JISとして解釈され、日本語の1文字ごとに2〜3文字の別の文字が現れます。「こんにちは」が「縺薙s縺ォ縺。縺ッ」になるのがそれです。バイト列は壊れておらず、最初の前提だけが間違っています。
先頭にBOMの3バイト(EF BB BF)を足すと、Excelはそのファイルを UTF-8 として読み、それ以外は何も変わりません。いちばん多い困りごとの直し方はこれだけで、このページがUTF-8のファイルに対して最初に提案するのもこの形です。
どの文字コードを選ぶか
人がExcelで開くファイルはUTF-8(BOM付き)。プログラムが読むファイルはUTF-8(BOMなし)です。Unityのローカライズ取り込み、Unrealのストリングテーブル、Godot、gettext系ツール、多くのCSVライブラリはBOMを1列目の列名の一部として扱うため、「id」という名前のキーが生まれます。Shift_JISはそれしか読めないツールのためだけに使ってください。絵文字、多くのUnicode記号、JIS X 0208の外にある文字は入らないので、このページは変換で失われる文字をダウンロード前にすべて列挙します。
判定の仕組み
BOMがあればUTF-8・UTF-16LE・UTF-16BEは即座に確定します。BOMがなければ、まず厳密なUTF-8として読みます。偶然UTF-8として正しく読めるファイルはまずないので、これも確定です。UTF-8として読めなかったときだけShift_JISかEUC-JPかの判断になり、どちらもたいていのバイト列を何かの文字に読めてしまうため、両方で読んだ結果の「日本語らしさ」を比べて決めます。この場合は「推定」と表示するので、変換前にプレビューを確認してください。
翻訳ファイルを丸ごと、更新のたびにチェックするなら
Loclint はプロジェクト単位で CSV / JSON を預かり、変数・タグ・訳し忘れ・原文のまま・文字数・key の重複の検査に AI レビューを加え、前回からの新規・解消・再発を追跡します。無料プランはカード登録不要です。