FRL 自由研究ラボ

はじめての道具箱 — まず知っておくこと

CSV と JSON

— データを入れる2つの箱 —

AI に道具を作ってもらうと、「データを CSV で保存します」「JSON にします」といった言葉が出てきます。この記事では、2つの違いと、どちらがどんなデータに向いているかを、はじめての人向けに説明します。

この記事を読むとできること

  • CSV と JSON を見分けられるようになります
  • どちらの箱がどんなデータに向くか分かるようになります
  • 太字や色が消えてしまう理由が分かるようになります

想定している使い方

ブラウザで開くチャット型の AI(Gemini や ChatGPT など)にコードを書いてもらい、 それを自分の Mac に保存して動かす使い方です。この記事の操作や画面の説明は、すべて Mac を前提にしています。

  1. CSV と JSON とは何か
  2. 2つの箱の違い
  3. JSON の出番
  4. 太字や色が消える理由
  5. よくあるつまずき
  6. AI への伝え方
  7. 確かめ方
  8. 関連する項目

読む目安:約12分 ・ 道具箱の項目 A2(まず知っておくこと)・ 図4枚

CSV と JSON とは何か ―― なぜ知っておく必要があるのか

CSV は「表」を文字だけで書いたもの、JSON は「名札を付けた箱を、入れ子にしたもの」を文字だけで書いたものです。どちらも、道具が覚えておきたい情報をファイルとして保存するための箱です。

AI に作ってもらう道具の多くは、一覧や成績のような情報を、Mac の中にファイルとして保存します。そのとき AI から「CSV で保存します」「JSON にします」と提案されます。

2つの違いを知らないと、提案の理由が分からず、データの形に合わない箱を選んでしまい、あとで中身が崩れることがあります。どちらにするかは AI が提案してくれますが、データがどんな形をしているかを一番よく知っているのはあなたです。違いを知っておくと、提案が合っているかを判断できるようになります。

✕ データの形に合わない箱に入れると 1問ごとの成績 解くたびに記録が1回分増える 問題ごとに記録の数が違う 列の数が決まった表(CSV) 問題 | 1回目 | 2回目 | ? 列が足りず、 はみ出す・ずれる ○ データの形に合った箱に入れると 1問ごとの成績 解くたびに記録が1回分増える 問題ごとに記録の数が違う 箱の中に箱(JSON) 問題A:○ ✕ ○(3回分) 問題B:✕(1回分) そのまま入り、 増えても崩れない 表にきれいに収まるデータは CSV、1件ごとに中身の量が違うデータは JSON。形に合った箱を選ぶと、あとで崩れません。

図の見方:上の段は、解くたびに「いつ解いて、合っていたか」の記録が1回分ずつ増え、問題ごとに記録の数が違う「クイズの成績」を、列の数が決まった表(CSV)に押し込んだ場合です。入りきらない情報が出て、はみ出したりずれたりします。下の段は、同じ成績を、箱の中に箱を入れられる JSON に入れた場合で、あとから情報が増えても崩れずに入ります。

2つの箱の違い ―― 同じデータを入れてみる

動画2本ぶんの「タイトル・大分類・中分類」を、それぞれの形で書いてみます。覚えるのは書き方ではなく、形の違いです。

CSV では、1行目に見出しを書き、2行目から1件ずつ、項目を「,」(カンマ)で区切って並べます。Numbers(Apple の表計算アプリ。App Store から無料で入れられます)や Excel で開くと、そのまま表として見られます。JSON では、1件ぶんの情報を「{ }」でくくった箱に入れ、その箱を「[ ]」でくくって一覧にします。値の前には毎回「タイトル」のような名札が付きます。

CSV = 表 タイトル,大,中 肉じゃが,料理,和食 コロッケ,料理,洋食 ・1行目が見出し、2行目から1件ずつ ・項目の区切りは「,」(カンマ) ・Numbers や Excel でそのまま表として開ける JSON = 名札つきの箱 [ {"タイトル": "肉じゃが", "大": "料理", "中": "和食"}, {"タイトル": "コロッケ", …} ] ・{ } が1件ぶんの箱、[ ] がその一覧 ・値の前に、毎回「名札」が付く ・道具(プログラム)が読み書きしやすい

※ CSV は Comma-Separated Values(カンマで区切った値)、JSON は JavaScript Object Notation(JavaScript というプログラミング言語の書き方を借りた、データの書き方)の略です。名前は覚えなくて大丈夫です。

表に収まらないデータは、JSON の出番

動画の一覧は、どの1本も「タイトル・大・中」と同じ欄を持つので、表(CSV)にぴったり収まります。

一方、クイズの成績を「いつ解いて、合っていたか」の記録として残すと、1問ごとに、解くたびに記録が1回分ずつ増えていきます。3回解いた問題には3回分、1回しか解いていない問題には1回分と、問題ごとに記録の数が違い、1つの欄の中にさらに一覧がある形です。こうしたデータは、箱の中に箱を入れられる JSON の方が、無理なく入ります。

どの行も同じ欄 → CSV タイトル | 大 | 中 肉じゃが | 料理 | 和食 コロッケ | 料理 | 洋食 欄の数がそろっているので、表で十分 箱の中に箱がある → JSON 成績 問題A 10/1 ○ / 10/2 ✕ / 10/4 ○ 問題B 10/3 ✕ 1件ごとに中身の量が違っても、そのまま入る

※ どちらを使うかは、AI が提案してくれます。違いを知っておくと、その提案の理由が読めるようになります。

筆者の体験メモ

筆者の道具では、動画の一覧を CSV、クイズの問題と成績を JSON で保存しています。

文字だけの箱には、太字も色も入りません

CSV も JSON も、中身は文字だけです。書類の中で付けた太字や赤い文字は、箱に移したとたんに落ちてしまいます。下の図では、「無効」に太字と色を付けた解説の文を CSV にしたところ、文字は残っても、太字と色が消えています。

元の書類(解説) この場合は 無効 となる。 大事な語に太字と色 CSV にする この場合は無効となる。 文字は残るが、太字も色も消えた 装飾を残したいときの考え方 ・装飾を「印」として文字に書き換えてから箱に入れる(例:大事な語を決まった記号ではさむ) ・書類から直接読み取る方法に変える(AI に「装飾も拾いたい」と伝える)

※ 装飾を残したいときは、装飾を決まった記号の「印」に置き換えてから箱に入れるか、元の書類から直接読み取る方法に変えてもらいます。

筆者の体験メモ

筆者もクイズの道具でこの壁に当たりました。問題をスプレッドシートに移して CSV で読み込んでいたころは、原本で付けた文字の色や太字がすべて落ちてしまい、セルの中に手で印を書き込むか、原本へ飛ぶボタンを置いて見に行く、という形で折り合いをつけていました。のちに(2026年7月)、書類(Word 形式で書き出したもの)から直接読む方法に変えて、太字や色をそのまま画面に出せるようになりました。

よくあるつまずき

起きていることから探してください。

起きていること 原因 どうするか
CSV を表計算アプリで開いたら、文字化けした 文字の符号の決まり(文字コード)が、作った側と開いた側で違う AI に「この CSV を Numbers で開くと文字化けする」と伝えて、保存の仕方を合わせたコードにしてもらいます
CSV の一部の行だけ、列が1つずつずれる 中身の文に「,」(カンマ)が入っていて、区切りと読まれた 文を「"」でくくる書き方のコードにしてもらいます
太字や色が消えた CSV も JSON も文字だけの箱だから 装飾を印に置き換えるか、元の書類から直接読む方法に変えてもらいます
JSON を手で少し直したら、道具がまったく読めなくなった かっこやカンマが1つ欠けるだけで、ファイル全体が読めなくなる 手で直す前に控え(コピー)を残します。直すのは道具の画面からにするか、直し方を AI に聞きます
JSON を開いたら、1行にぎっしり詰まっていて読めない 改行を省いて保存してある(機械にとっては同じ意味) 読みやすく表示する方法を AI に聞きます(中身を貼る前に、個人の情報が入っていないか確かめます)

AI への伝え方

※ この道具箱は対話型コーディング(ブラウザの画面でチャットの AI と文章をやりとりして、コードを書いてもらうやり方)の前提です。 チャットの AI はあなたの Mac を見られないので、頼むのは「コードを書いて」、困ったら出た文字を貼って伝えます。 形式を自分で決める必要はありません。どんなデータを、何に使うかを話して、形式は理由つきで提案してもらうのが近道です。 下の文は、そのまま写すためのものではなく、言い方の見本です。

保存の形を決めてもらうとき

「クイズの問題と、1問ごとの成績を保存したい。成績は解くたびに増えていく。CSV と JSON のどちらがいいか、理由を1行ずつ添えて提案して」

壊れたときの扱いを決めておくとき

「保存したファイルが壊れていて読めないときは、空っぽとして扱わずに、止めて画面に知らせるコードにして。上書きもしないようにして」

※ 2つ目は地味ですが大事です。「読めない=0件」として先に進むと、そのまま空の中身で上書きされ、それまでの記録が消えることがあります。

確かめ方 ―― 開いて、直して、もう一度開く

箱がデータの形に合っているかは、実際に開いて、1件直して、もう一度開くことで確かめられます。

  1. 1

    CSV の場合は、Numbers で開いて、全部の行で列がそろっているか(右へはみ出した行が無いか)を見ます。

  2. 2

    JSON の場合は、道具の画面で1件だけ直して保存し、道具を起動し直しても、その変更が残っているかを見ます。

  3. 3

    太字や色が要るデータなら、装飾を付けた1件が、道具の画面でもそのまま見えているかを確かめます。消えていたら、「文字だけの箱には、太字も色も入りません」の話です。