開発者向け作業フロー

CSV と JSON の変換エラーを直す

ヘッダー、引用符付きカンマ、区切り文字、空セル、エンコード、BOM、不正な JSON 配列が原因の CSV と JSON 変換エラーを診断します。

課題

CSV と JSON の変換失敗は、変換ツールそのものより元データの構造不一致から起きることが多いです。ヘッダー行、引用符付き区切り文字、空セル、BOM、文字コード、複数行セル、不正な JSON 配列は、簡単なプレビューでは正しそうでも、表計算ソフト、データベース、API テストへの取り込み時に誤った列やキーを作ります。

使う場面

  • CSV エクスポート後に JSON key が欠ける、または列が一つずつずれるときに使います。
  • JSON payload が配列ではない、または record の形がそろわず CSV にできないときに使います。
  • 名前、住所、説明文にカンマや改行が含まれ、セルが余分な列へ分かれるときに適しています。
  • 最初のヘッダーに見慣れない文字が付く、または日本語や韓国語の値が文字化けするときに使います。
  • 空セル、ネストした field、列の不一致が想定外に扱われ、表計算ソフトへの取り込みが失敗するときに使います。

手順

  1. 手順 1

    ヘッダー行を先に確認

    CSV の 1 行目に安定した field name があるか確認します。空のヘッダー、重複ヘッダー、人向けの説明ラベルは JSON object key にする前に直します。

  2. 手順 2

    区切り文字と引用符を確認

    名前、住所、説明文にカンマや改行が含まれていないか見ます。区切り文字を含む値は引用符で囲まれていないと parse 時に列がずれます。

  3. 手順 3

    JSON を CSV に戻す前に整形

    JSON から始める場合は JSON Formatter で構文エラー、配列の位置、record ごとの key の違いを見える状態にしてから CSV へ出力します。

  4. 手順 4

    文字化けしたらエンコードを確認

    ヘッダーや値が壊れて見える場合は、文字コードと隠れた BOM を確認してから変換をやり直します。値を一つずつ直す前に読み込み方を確認してください。

  5. 手順 5

    小さなサンプルで往復確認

    代表的な数行を先に変換し、全ファイルを処理する前に対象の表計算ソフト、API クライアント、データパイプラインで開き直して確認します。

CSV と JSON の変換エラーを直すの例

入力

id,name,note
1,Ada,"uses commas, safely"
2,Linus,"exports cleanly"

出力

[{"id":"1","name":"Ada","note":"uses commas, safely"},{"id":"2","name":"Linus","note":"exports cleanly"}]

よくあるミス

重複ヘッダーを残したままにする

重複した列名は値を上書きしたり、紛らわしい key を作ったりします。行を JSON object にする前に、重複ヘッダーを明確な名前へ変えてください。

ファイルを見ずに区切り文字を変える

地域設定によってはセミコロン区切りの CSV もありますが、多くのファイルはカンマ区切りです。推測せず、実際のファイルと delimiter 設定を合わせます。

エンコード問題をデータ欠損と誤解する

文字化けは、間違った charset で読んだ、または BOM が含まれている合図かもしれません。すべての値を手作業で直す前に encoding を確認します。

ネストした JSON を列選択なしで平坦化する

API response では record の中に object や array が入ることがあります。CSV column にする nested field を先に決めないと、セルが読みにくい文字列になります。

複数行 CSV セルを忘れる

住所、コメント、説明文には引用符内の改行が含まれることがあります。この改行は新しい record ではなく、値の一部として扱います。

よくある質問

CSV 変換後に列がずれるのはなぜですか?

値の中にあるカンマ、改行、区切り文字が正しく引用符で囲まれていない可能性があります。列が初めてずれる行を探し、該当セルの引用符を確認してください。

API response を JSON から CSV にすると失敗するのはなぜですか?

多くの converter は一貫した record 配列を期待します。まず JSON を整形し、response が metadata に包まれている場合は、出力したい配列だけを取り出します。

CSV ヘッダーの文字化けはどう直しますか?

データを書き換える前に、ファイルの encoding と隠れた BOM を確認してください。エンコード問題は最初のヘッダーや日本語、韓国語などの非英語テキストを壊れて見せます。

JSON record ごとに key が違う場合はどうしますか?

CSV に出す前に record shape をそろえます。欠けている key を意図的に補い、衝突する field name を変え、安定した column order を決めてください。

空の CSV セルは空文字と missing field のどちらにしますか?

出力先の意味に合わせます。表計算ソフトでは空文字が表の形を保ちやすく、API では存在しない値と空テキストを別扱いすることがあります。

CSV 値の中の改行はどう扱いますか?

複数行の値は引用符で囲まれたセル内に保ち、変換後の行数を確認します。引用符内の改行で新しい record を作らないようにします。