JSON to CSV

JSON CSV 変換

JSON CSV変換は、JSONテキストの貼り付けまたはJSONファイルのアップロードだけで簡単にCSVファイルへ変換できるツールです。ネストされたJSONオブジェクトも自動でフラット化し、出力する列の選択や並び替え、区切り文字・文字コード・改行コードの切り替えにも対応しています。変換結果はプレビュー確認後にダウンロードできます。

使い方

  1. JSONテキストをテキストエリアに貼り付けるか、「ファイルを開く」からJSONファイルをアップロードします。
  2. 「CSV に変換」ボタンを押すと、変換結果のプレビューと行数・列数が表示されます。
  3. 「出力列の選択・並び替え」エリアで、CSVに含める列のチェックをオンオフしたり、ドラッグで列順を変更できます。
  4. 区切り文字(カンマ・タブ・セミコロン)、文字コード(UTF-8 BOM付き・UTF-8)、改行コード(CRLF・LF)、キー順(JSON順・アルファベット順)を必要に応じて変更します。
  5. 「CSVをダウンロード」ボタンを押してCSVファイルを保存します。CSVテキストをそのままコピーすることもできます。

JSONとは

JSONとは何か

JSONは、データをわかりやすく整理して保存したり、システム同士でやり取りしたりするための書き方です。

正式には JavaScript Object Notation と呼ばれます。

難しく見える名前ですが、考え方はそれほど複雑ではありません。イメージとしては、「項目名」と「その中身」をセットで並べたデータのメモ書き形式です。

たとえば、次のような情報をまとめるとします。

  • 名前
  • 年齢
  • メールアドレス

これをJSONで書くと、こうなります。

{
  "name": "Taro",
  "age": 30,
  "email": "taro@example.com"
}

これは、

  • name は Taro
  • age は 30
  • email は taro@example.com

という意味です。

JSONは何のために使われるのか

JSONは、主にデータを整理して扱いやすくするために使われます。特に、Webサービスやアプリ、APIなどで非常によく使われています。

たとえば、次のような場面です。

Webサービスの会員情報を受け渡す時

ログイン中のユーザー情報をシステムが扱うときに、名前やID、メールアドレスなどをJSON形式で管理することがあります。

APIのレスポンスを受け取る時

天気情報、商品情報、投稿一覧などを外部サービスから取得するとき、その結果がJSONで返ってくることが多いです。

設定ファイルとして使う時

アプリやツールの設定内容を保存する用途でもJSONは使われます。

つまりJSONは、人にもある程度読めて、プログラムでも扱いやすい形式として広く使われています。

JSONの基本ルール

JSONにはいくつか決まった書き方があります。ここを押さえると、見たときに理解しやすくなります。

1. 項目名はダブルクォーテーションで囲む

JSONでは、キーと呼ばれる項目名を " " で囲みます。

{
  "name": "Taro"
}

name が項目名、Taro が値です。

2. 文字列もダブルクォーテーションで囲む

文字として扱うデータは、基本的に " " で囲みます。

{
  "city": "Tokyo"
}

3. 数字はそのまま書ける

数値はダブルクォーテーションなしで書けます。

{
  "age": 30
}

4. データのまとまりは波かっこで囲む

{ } は、ひとつのデータのまとまりを表します。

{
  "name": "Taro",
  "age": 30
}

5. 複数のデータを並べる時は角かっこを使う

[ ] は、複数のデータを並べたリストを表します。

[
  {
    "name": "Taro"
  },
  {
    "name": "Hanako"
  }
]

これは、「Taro」と「Hanako」という2件のデータが並んでいる状態です。

JSONでよく使う要素

JSONでは、主に次のような値を扱えます。

文字列

"name": "Taro"

数値

"age": 30

真偽値

true と false は、はい・いいえのような意味で使います。

"isMember": true

null

値が空であることを表します。

"phone": null

オブジェクト

複数の項目をひとまとめにしたものです。

"user": {
  "name": "Taro",
  "age": 30
}

配列

複数の値を並べたものです。

"tags": ["news", "tech", "web"]

JSONの見方をやさしく理解するコツ

JSONが苦手に感じやすい理由は、記号が多く見えるからです。ただ、見るポイントを決めると理解しやすくなります。

まずは「項目名」を見る

JSONでは、左側にある文字が何の情報かを示しています。

{
  "name": "Taro",
  "age": 30
}

この場合は、

  • name は名前
  • age は年齢

という意味です。

次に「値」を見る

右側にあるものが、その項目の中身です。

  • "Taro" は文字
  • 30 は数値

波かっこが増えたら「中に別の情報が入っている」と考える

{
  "user": {
    "name": "Taro",
    "age": 30
  }
}

この場合、user の中にさらに name や age が入っています。

角かっこが出たら「複数ある」と考える

{
  "users": [
    {"name": "Taro"},
    {"name": "Hanako"}
  ]
}

これは、users の中に複数のユーザー情報が入っている形です。

JSONと表の違い

JSONとCSVは、どちらもデータを扱う形式ですが、向いている用途が少し違います。

JSONが向いているケース

  • データの構造が複雑
  • 入れ子になった情報がある
  • 配列や複数階層を扱いたい
  • システム同士でやり取りしたい

CSVが向いているケース

  • 表形式で整理したい
  • Excelで開きたい
  • 一覧として確認したい
  • 集計や表計算をしたい

たとえば、名前と年齢だけの単純な一覧ならCSVでも十分です。一方で、ユーザーごとに住所情報や購入履歴などがぶら下がる場合は、JSONのほうが表現しやすくなります。

JSONがよく使われる理由

JSONが広く使われているのは、次のような理由があるからです。

人が見ても比較的わかりやすい

XMLなど他の形式と比べると、記述が比較的シンプルです。

プログラムで扱いやすい

多くの言語でJSONを読み込んだり出力したりする機能が標準的に用意されています。

Webとの相性が良い

API通信やフロントエンド開発で使いやすく、現代のWebサービスで非常に一般的です。

柔軟にデータを表現できる

単純な1件のデータから、複数階層の複雑なデータまで表現できます。

JSONでよくあるミス

初心者がつまずきやすいポイントもあります。

ダブルクォーテーションではなくシングルクォートを使ってしまう

JSONでは基本的にダブルクォーテーションを使います。

誤りの例

{
  'name': 'Taro'
}

正しい例

{
  "name": "Taro"
}

最後のカンマを消し忘れる

JSONでは末尾のカンマがエラーになることがあります。

誤りの例

{
  "name": "Taro",
  "age": 30,
}

波かっこや角かっこの閉じ忘れ

データが長くなると起きやすいミスです。

文字列なのにクォーテーションを付けていない

{
  "city": Tokyo
}

これはエラーになります。

正しくはこうです。

{
  "city": "Tokyo"
}

JSONを知らない人向けのたとえ

JSONは、情報を整理したラベル付きの箱のようなものです。

たとえば、引き出しにラベルを貼るとします。

  • 名前 → Taro
  • 年齢 → 30
  • 住所 → Tokyo

この「ラベル」と「中身」をルールに従って書いたものがJSONです。さらに、箱の中に別の小箱を入れたり、同じ種類の箱をいくつも並べたりできます。そのため、単純な情報だけでなく、少し複雑なデータも整理しやすいのです。

JSONを理解すると何が便利か

JSONを理解すると、次のような場面で役立ちます。

  • APIのデータ内容が読める
  • ツールの入出力形式を理解しやすくなる
  • JSON CSV 変換ツールの意味がわかる
  • エラーの原因を見つけやすくなる
  • ノーコードツールや自動化ツールを使いやすくなる

特に、Web系のツールや外部サービス連携を扱う人にとっては、JSONの基本を知っているだけで理解の速さが大きく変わります。

まとめ

JSONとは、データを整理して保存したり、システム同士で受け渡したりするための形式です。

見た目は少し難しそうですが、実際には

  • 項目名
  • データのまとまり
  • 複数データの並び

この4つの考え方を押さえれば、かなり読みやすくなります。

最初は記号に見えても、「何の項目で、どんな値が入っているか」を順番に見るだけで理解しやすくなります。

注意事項

このツールは無料でご利用いただけます。

※このプログラムはPHP8.2.22にて作成、動作確認を行っております。
※ご利用下さっている皆様のご意見・ご要望(改善要望)をお寄せください。