メインコンテンツへスキップ

← ブログ一覧へ

JSON を CSV・Excel に変換する方法(と、戻す方法)

コードは JSON、表計算は CSVExcel を話します。遅かれ早かれ、データをこの間で移す必要が出てきます。3 つの形式は同じ行と列を持っています——コツは、変換で壊さないことです。その方法を紹介します。

各形式の用途

  • JSON——コードや API のための構造化データ。表形式では通常オブジェクトの配列:[{"name":"Ann","age":30}, …] で、各オブジェクトが 1 行です。
  • CSV——プレーンテキストの表(カンマ区切り)。汎用的で軽く、ほぼ何にでも取り込めます。
  • Excel(.xlsx)——書式・複数シート・数式を持つバイナリの表計算。多くの同僚が実際に開くのはこれです。

JSON → CSV

最も変換しやすいのはフラットなオブジェクトの配列です。各オブジェクトが 1 行になり、キーがヘッダー行になります。入れ子のオブジェクトは平面の表にきれいに対応しないので、先に平坦化してください(または最上位だけが変換されると考えてください)。

JSON → Excel

考え方は同じですが、出力は Excel・Numbers・Google スプレッドシートで直接開ける .xlsx です——取り込み手順は不要。表計算中心の人にデータを渡すときに最適です。

CSV・Excel → JSON

逆方向では、表計算をコードが解析できるオブジェクトの配列に変えます——DB への投入、API への供給、テストデータの読み込みに便利です。

ブラウザ内で、アップロードなし

データファイルには機微な情報が含まれることが多く、アップロードするツールはリスクです。以下はすべて端末内で動作します。

  • JSON ⇄ CSV ⇄ Excel 変換——JSON か CSV を貼り付け、または .xlsx をアップロードして三者間で変換。
  • JSON 整形——先に JSON を整えて検証すると、変換が予測どおりになります。

きれいに変換するコツ

  • JSON をキーが揃ったオブジェクトの配列にする——列と 1:1 で対応します。
  • 先に JSON を検証する(カンマ 1 つで壊れます)。
  • Excel では出力が本物の .xlsx であることを忘れずに(CSV のリネームではありません)。

「オブジェクトの配列」という形を押さえれば、JSON・CSV・Excel 間の移動は 2 クリック・アップロード不要の作業になります。