5 分で JSON を CSV へ: API データを Excel で開く
2024-05-10
PM やアナリストは JSON を表計算で扱いたい場面が多くあります。CSV は最も汎用的な橋渡し形式で、1 行 1 レコード・カンマ区切りが基本です。
理想的な入力形
トップレベルがオブジェクト配列で、キーが一貫している形が理想です。ネストオブジェクト(address.city など)は事前にフラット化します。
[ { "id": 1, "name": "Alice" }, { "id": 2, "name": "Bob" } ]手作業 CSV を 4 ステップで作る
ヘッダーを決め、1 行目に書き、各オブジェクトを 1 行へ変換し、カンマや改行を含むフィールドは引用符で囲みます。
id,name
1,Alice
2,BobJavaScript で素早く出力
JSON をパースし、RFC 4180 に沿ってエスケープし、改行結合して Blob としてダウンロードします。
const escape = (v) => {
const s = String(v ?? "");
return /[",\n]/.test(s) ? `"${s.replace(/"/g, '""')}"` : s;
};ネストデータの扱い
1 対多データは id で関連づけた 2 つの CSV に分ける方が、横に広すぎる 1 行より管理しやすいです。
Excel の文字コード
Windows では UTF-8 インポートまたは BOM 付き CSV が有効です。文字コード問題が続く場合は .xlsx 出力ライブラリを検討します。
ワークフロー
JSON 検証 -> キー確認 -> CSV 生成 -> Excel 取り込み -> 定期出力は自動化。