CSVを開いたときに日本語だけが崩れても、データそのものが消えたとは限りません。最初に「どの文字コードで保存されたか」と「アプリがどの文字コードとして読んだか」を分けて確認します。

今回確認するCSV

氏名,住所
山田太郎,東京都

画面に見える文字は同じでも、UTF-8とShift_JIS/Windows-31Jでは日本語を表すバイト列が異なります。正しい原本を残したまま、コピーで確認してください。

文字化けは保存形式と読み方の不一致で起きる

UTF-8とShift_JISのCSVを正しい設定または誤った設定で開いた場合の違い
保存形式と異なる文字コードで読むと、同じバイト列が別の文字として表示されます。

UTF-8のバイト列をShift_JISとして読む場合も、その逆の場合も文字化けします。拡張子が.csvでも文字コードは判別できません。まず文字コード判定ツール、構造も同時に調べるならCSV文字コード・総合診断で候補を確認します。

自動判定は推定です。特に英数字だけの短いCSVはASCII範囲のバイトしかなく、UTF-8とShift_JISのどちらでも同じように読めるため、作成元や取込先の仕様が必要です。

症状から確認箇所を絞る

症状可能性最初の確認
日本語全体が崩れるUTF-8とShift_JISの取り違え原本の文字コード
Excelで直接開くときだけ崩れるExcel側の自動判定[データ]から文字コードを指定
1列目の名前だけ一致しないUTF-8 BOMの扱いBOMの有無と取込仕様
一部が?や代替文字になる変換先で表現できない文字絵文字・機種依存文字

「開き方」「変換」「BOM操作」は別の処置

1. 開き方を変える

ファイルはUTF-8のまま、Excelの[データ]→[テキストまたはCSVから]でUTF-8を指定します。別システムへ渡す形式を変えず、表示だけ直したい場合の第一候補です。

2. 文字コードを変換する

取込先がUTF-8を要求するならShift_JISからUTF-8へ変換し、Shift_JIS/Windows-31Jを要求するならUTF-8からShift_JISへ変換します。後者では絵文字など表現できない文字があるため、警告を確認します。

3. UTF-8 BOMを追加・削除する

BOMはUTF-8ファイル先頭のEF BB BFです。文字コード自体を変換せず、必要な場合だけUTF-8 BOM追加・削除ツールで操作します。Excelで認識されやすくなる場合がありますが、取込先がBOMなしを要求することもあります。

安全に直す手順

  1. 文字化けする前の原本を別名で保管します。
  2. 文字コード判定と作成元の仕様から、原本の文字コードを確認します。
  3. 取込先が要求する文字コードとBOMの有無を確認します。
  4. 開き方の変更だけでよいか、文字コード変換が必要かを決めます。
  5. 変換後の冒頭数行と、日本語・特殊文字を原本と照合します。

例のCSVがUTF-8で、Excelだけが誤って解釈しているなら、変換せずUTF-8を指定して開きます。取込先がShift_JIS指定なら、変換後に各見出しと日本語が保たれているか確認します。

文字化けした状態で上書きした場合

文字化けした表示をそのまま保存すると、元のバイト列が別の文字列へ置き換わる場合があります。その後に文字コードだけ戻しても、失われた文字を確実には復元できません。元CSV、送信元の再出力、バックアップからやり直すのが安全です。

列が増える、1レコードが複数行に見える症状は文字コードではなく、区切り文字や引用符の問題かもしれません。総合診断で文字コードとCSV構造を分けて確認します。

まとめ

文字化けは、まず保存時の文字コードと読み込み時の設定の不一致を疑います。原本を残し、判定結果を絶対視せず作成元・取込先の仕様と照合してください。開き方、文字コード変換、BOM操作のうち必要なものだけを行い、処理後の実データを確認します。