JSONをCSVに変換するには
JSON は、アプリやAPIがデータを送るときの形式です。CSV は、表計算ソフト、データベース、インポートツールが読み込む形式です。Webサービスから注文・連絡先・ログを書き出すとJSONで出てくることが多いのですが、上司や店舗システム、メール配信ツールが求めるのはCSVです。
このツールは JSON配列をCSVの行 に変換します。オブジェクト1つが1行、キー1つが1列になります。JSONを貼り付けるか .json ファイルを開くと、入力に合わせてCSVがすぐ下に表示されます。
処理はすべて お使いのブラウザ内 で行われます。データがアップロードされることはありません。
主な機能
- リアルタイム出力 — 入力や貼り付けに合わせてCSVが更新されます
- 入れ子のオブジェクトを展開 — {"address": {"city": "London"}} は address.city という列になります
- すべてのキーが列に — 一部のオブジェクトにしかないキーも列になります
- リストを自動で検出 — 行が {"data": [...]} のようなオブジェクトの中にあっても、そのリストを使います
- .json ファイルを開く・ドロップ — CSVのファイル名は元のファイル名になります
- 区切り文字 — カンマ、セミコロン、タブ、パイプ
- 正しい引用符処理 — 値の中のカンマ、引用符、改行も安全に保たれます
入れ子のJSONが列になるしくみ
CSVは平らな表で、1行に1列1つの値です。JSONは入れ子にできます。入れ子のオブジェクトを展開する をオン(初期設定)にすると、各オブジェクトの中に入り、キーをドットでつなぎます。値の種類ごとの変換は次のとおりです。
| JSONの値 | CSVのセル |
|---|---|
"name": "Ada" | 列 name = Ada |
"address": {"city": "London", "zip": "W1J 7NT"} | 列 address.city = London と 列 address.zip = W1J 7NT |
"tags": ["math", "code"] | 列 tags = math, code |
"items": [{"id": 1}, {"id": 2}] | 列 items = リストをJSONテキストにしたもの |
"paid": true | true |
"note": null | 空のセル |
展開 をオフにすると、入れ子のオブジェクトはJSONテキストとして1つのセルに入ります。何も失われず、「[object Object]」と表示されることもありません。
ボックスの例は、次のCSVになります。
| id | name | address.city | address.zip | tags |
|---|---|---|---|---|
| 1 | Ada Lovelace | London | W1J 7NT | math, code |
| 2 | José Álvarez | Madrid | 28013 | design |
行がオブジェクトの中にある場合
多くのAPIはリストをオブジェクトで包んで返します。例: {"status": "ok", "count": 2, "data": [ … ]}。このツールは中を調べ、いちばん長いオブジェクトのリスト を見つけて使います。どのリストを使ったかは、ボックスの下の行に *「data」のリストを使いました* のように表示されます。リストを含まない単一のオブジェクトは1行になります。
カンマかセミコロンか
標準はカンマです。ただし、ヨーロッパの多くの国のExcelは、カンマが小数点なので セミコロン を求めます。CSVをExcelで開いたときにすべてがA列に入ってしまう場合は、セミコロンを選んでもう一度ダウンロードしてください。この問題を避けるには、JSONをExcelに変換 で本物のExcelファイルを作る方法もあります。
よくある質問
JSONファイルをCSVに変換するには?
「.json ファイルを開く」をクリックします(ボックスにファイルをドロップしてもOK)。すぐにCSVが表示されます。「ダウンロード」を押すと保存され、ファイル名はJSONと同じになります。
入れ子のオブジェクトはどうなりますか?
入れ子のキーはそれぞれ独立した列になり、ドットでつながれます。例: customer.address.city。「入れ子のオブジェクトを展開する」のチェックを外すと、入れ子のオブジェクトはJSONテキストとして1つのセルに入ります。
オブジェクトごとにキーが違う場合は?
どれか1つでも持っているキーはすべて列になります。そのキーがない行は空のセルになります。
CSVをJSONに戻せますか?
はい。上部で CSV → JSON に切り替えるか、CSVをJSONに変換 のページをお使いください。
サイズの上限はありますか?
何もアップロードしないので、アップロードの上限はありません。ただし数十MBほどの非常に大きなファイルは、変換中にページが重くなることがあります。
データは安全ですか?
はい。変換はブラウザの中で行われ、サーバーには何も送信されません。
関連ツール
- JSONをExcelに変換 — 同じデータを本物の .xlsx ブックで
- CSVをJSONに変換 — 逆方向の変換
- JSON整形ツール — まずJSONをチェックして整える
- CSVファイルを結合 — このCSVを他のCSVと結合
- CSVをExcelに変換 — 先頭のゼロを消さずにCSVをExcelで開く
使い方
- JSONをボックスに貼り付けるか、.json ファイルを開く をクリックします
- 入れ子のオブジェクトを展開する をオンのままにすると、入れ子のキーごとに1列になります
- 区切り文字 を選びます — 多くのソフトはカンマ、ヨーロッパの多くの国のExcelはセミコロン
- 出力ボックスでCSVを確認します
- コピー を押すか、ダウンロード で .csv ファイルを保存します