Json To Csv LogoJson To Csv

what is JSON to CSV converter online? 内部の5つの部品を解剖する(2026年ガイド)

JSON CSV 変換オンラインツールとは、JSONデータをCSVファイルに変換するウェブページのことです。ボタンの下では5つの小さな部品が順番に動いています。パーサー、行ファインダー、フラットナー、引用符エンジン、そしてダウンロードです。このガイドでは5つの部品をひとつずつ取り出して、それぞれがあなたのデータに何をするのかを実際のコンバーターで検証した出力とともに解説し、ページのオプションがどの部品につながっているのかも明らかにします。

更新日: 2026-10-249 分で読めます

what is JSON to CSV converter online? 1つではなく5つの部品

コンバーターにJSONを貼り付けてCSVが出てくると、それが1つの動作のように感じます。しかし実際は違います。このページのものを含めて、どのJSON CSV 変換オンラインツールも、同じ5つの工程を同じ順番で実行しています。解析、行の検出、フラット化、シリアライズ、ダウンロードです。どの工程が何をするのかを知っていると、エラーメッセージや見慣れないセルの読み方が変わります。なぜなら、問題の種類は必ずどれか1つの工程に属しているからです。工程の順番は固定されています。行を先に決めてから平らにし、平らにしてから引用符を付けます。この順番が崩れると、正しい引用符の判断ができなくなるからです。このガイドを読み終えるころには、5つの部品の名前と役割がすらすら言えるようになります。

パイプラインを知っておくべき理由はもう1つあります。ページ上のオプションは魔法の設定ではないのです。各トグルとドロップダウンは、特定の1つの工程に差し込まれています。フラット化のトグルは第3工程を制御します。区切り文字の選択は第4工程を制御します。この対応関係が見えれば、オプションは推測ではなく判断になります。迷ったときはこの対応表に戻ってください。オプションの効果が読めれば、出力の予測も立てられます。

このガイドでは、5つの工程を順番に、同じ小さな注文データを使ってたどっていきます。各部品が自分の仕事をするところをご覧いただけます。お見せする出力はすべて、イラストではなく、このページの実際のコンバーターが生成したものです。使う注文データは、入れ子の顧客情報、タグのリスト、カンマを含む備考を持つ小さなレコードです。

パート1:パーサー、入口の門番

第1工程では、貼り付けられた内容を読み取り、それがそもそもJSONなのかを判断します。この部品はパイプラインの中で最も厳格で、最も許しがありません。引用符の抜け、末尾のカンマ、余計な1文字があるJSONは、他の処理が走る前にここで却下されます。これは欠陥ではなく仕様です。壊れた入力を推測で処理するコンバーターは、間違った表を黙って作ってしまうからです。たとえばWordやExcelからコピーした全角の引用符や、行末に残ったカンマもここで却下されます。JSONの文法は妥協しないからです。

パーサーが入力を却下するときは、どこで止まったかを教えてくれます。通常、実際のミスから1、2文字以内の場所です。最も多い却下の理由は空のボックスと形式の壊れたJSONで、メッセージは平易なものです。空のボックスは変換のしようがないので、まず入力の有無を確認するのが親切な設計です。

What the parser reports
Input: (empty box)
Output: Input is empty. Please paste or upload JSON data.

この工程では、あなたのデータは何も変わりません。パーサーはJSONを受け入れて構造化された値を第2工程に渡すか、エラーでパイプライン全体を止めるかのどちらかです。壊れていると分かっている入力から表を作るコンバーターを見かけたら、そのコンバーターは検証を飛ばしています。その出力は信用しないほうがよいでしょう。受け入れられたJSONは、数値や真偽値の型情報を保ったまま第2工程に渡されます。型がテキストに変わるのは第4工程の直前です。

パート2:行ファインダー、行はどこから生まれるか

第2工程では、解析済みのJSONを見て1つの問いに答えます。何が行になるのか、という問いです。CSVは行のリストなので、コンバーターはデータの中からリストを見つけなければなりません。一番分かりやすいのは、オブジェクトの配列が最上位にある場合です。各オブジェクトがそのまま1行になります。この「リスト探し」がパイプラインの中で最も判断が難しい部分です。データの形が1つに決まっていないからです。

しかし実際のデータはそうきれいではありません。APIはリストを包むのが大好きです。優れた行ファインダーは包まれたリストを検出して行として使い、包みのフィールドは無視します。リストがなくオブジェクトが1つだけの場合は、ちょうど1行になります。1行に1オブジェクトを書く改行区切りJSONは、1行ずつ行として読み取られます。APIの応答は包みの形がまちまちなので、行ファインダーの賢さがコンバーターの品質を左右します。

Input: a wrapped list, as APIs return it
{"users": [{"name": "Amelia", "city": "Austin"}, {"name": "Bruno", "city": "Berlin"}], "total": 2}

行ファインダーはusersのリストを取り出して、nameとcityの列を持つ2行を作ります。totalのフィールドは行でも列でもないので捨てられます。予想より行が少なかったり、期待した列がなかったりするときは、この工程が原因です。コンバーターが、あなたが意図したものとは違うリストを見つけたのです。行数が合わないと感じたら、まずこの工程を疑うのが診断の近道です。

パート3:フラットナー、データを実際に変形する唯一の部品

第3工程は、データの形を実際に変える唯一の工程です。CSVのセルはオブジェクトやリストを保持できないので、入れ子になったものは表に収まる形に書き換えなければなりません。フラットナーは固定のルールですべての入れ子の値を最上位に引き上げます。入れ子のオブジェクトはドット記法の列になります。短いプレーン値のリストは値を連結した1つのセルになります。オブジェクトのリストは、引用符で囲まれたセル内のJSONテキストになります。たとえばcustomerの中にaddressがあり、その中にzipがあれば、customer.address.zipという列になります。深さに上限はありません。ルールが固定だからこそ、出力の列名は入力から機械的に予測できるのです。

このガイドで使う入力レコードはこちらです。入れ子のcustomerオブジェクト、tagsのリスト、そしてカンマを含むnoteが入っています。この3つのパターンを押さえておけば、どんな入れ子が来ても出力の形を予測できます。

Input JSON (nested)
[{"id": "A-101", "customer": {"name": "Amelia", "city": "Austin"}, "tags": ["new", "vip"], "note": "ships, fast"}]

パート3(続き):フラットナー、データを実際に変形する唯一の部品

そして、フラットナーが次の工程に渡すものがこちらです。実際のコンバーターで検証済みの出力です。列の順番は入力のキーの順番を保ちます。

Flattened output (verified against the real engine)
id,customer.name,customer.city,tags,note
A-101,Amelia,Austin,new; vip,"ships, fast"

列ごとに読み解いてみましょう。customerオブジェクトはcustomer.nameとcustomer.cityの2列になりました。tagsのリストは1つのセル、new; vipになりました。値はセミコロンと空白で連結されています。noteはカンマを保ったままです。これは第4工程が処理します。nullや空のリストは空のセルになります。何も作り出さず、何も削除せず、ただツリーが表になったのです。tagsの連結に使われたセミコロンと空白は、このコンバーターの固定ルールです。空のセルについても知っておきましょう。nullは空のセルになり、存在しないフィールドも空のセルになります。

フラット化のトグルをオフにすると第3工程は飛ばされます。入れ子の値はセルの中のJSONテキストのまま残り、表が壊れないように引用符で囲まれます。受け取り側のシステムがそのJSONを再び解析する場合にはこれが望ましく、そうでない場合は散らかることもあります。いずれにせよ、それをやっているのはこの工程です。セル内のJSONテキストは、あとで受け取り側がJSON.parseで戻せる形になっています。

パート4:シリアライザー、引用符エンジン

第4工程では、平らになった行をCSVテキストに変換します。その仕事は1つだけ、表を正しく保つことです。従うルールはシンプルです。区切り文字、引用符文字、改行を含むセルは二重引用符で包み、内部の引用符は2つに増やします。それ以外はそのまま書き出します。たとえばセルに He said "hi" とあったら、"He said ""hi""" のように外側を包み、内側の引用符を2つに増やします。

微妙なポイントは、引用符の判断が区切り文字に従うことです。何が特殊かという固定観念ではありません。同じレコードをセミコロン区切りでシリアライズしたものを見てください。実際のコンバーターで検証済みの出力です。区切り文字を変えたら引用符の付き方も変わるのが正しい、と覚えておくと混乱しません。

Semicolon output (verified against the real engine)
id;customer.name;customer.city;tags;note
A-101;Amelia;Austin;"new; vip";ships, fast

tagsのセルは今引用符で囲まれています。new; vipがセミコロンを含むからです。一方noteのships, fastは裸のままです。区切り文字がセミコロンの場合、カンマは普通の文字で保護は不要だからです。エンジンは実際に使われている区切り文字ごとに引用符を付けます。見た目は完璧なCSVがExcelで1列に開かれるのもこのためです。Excelがシリアライザーと違う区切り文字で分割したのです。これは第4工程の不一致であって、壊れたデータではありません。行末の改行は1つに統一され、余計な空行は付きません。クリーンな出力がそのままファイルになります。なお、セル内の改行は引用符で包まれることで保護され、行の区切りと混ざりません。

パート4(続き):シリアライザー、引用符エンジン

もう1つ区切り文字を紹介します。意外に思う人が多いからです。タブです。タブは実際のデータの中にほとんど現れないので、タブ区切りの出力では引用符がほとんど不要になります。タブ区切りはTSVとも呼ばれ、Excelやスプレッドシートに貼り付けるときに最も素直に開きます。

Tab output (verified against the real engine)
id	customer.name	customer.city	tags	note
A-101	Amelia	Austin	new; vip	ships, fast

引用符はどこにもありません。ヘッダーのトグルも第4工程のオプションです。列名を最初の行として書くかどうかを決めるだけで、他には何も変わりません。列名が不要なシステムに渡すときは、ヘッダーをオフにしてデータ行だけにします。

パート5:ダウンロード、シンプルなUTF-8とファイル名

第5工程は最も地味で、間違えやすい工程でもあります。完成したテキストを受け取り、ファイルとして渡します。このページではdata-export-YYYY-MM-DD.csvという名前を付けます。日付順に並ぶようにするためです。書き出しはバイトオーダーマークなしのシンプルなUTF-8です。日付はダウンロードした日のもので、同じ日に何度も保存しても上書きの事故が起きにくい設計です。

BOMなしの点は知っておく価値があります。Excelで噛みつくからです。BOMを期待してUTF-8を検出するプログラムもあります。BOMがないと、ファイルをダブルクリックしたときにアクセント文字が文字化けして表示されることがあります。修正するのは開く側であって、ファイル側ではありません。Excelではテキストインポートとしてファイルを取り込み、エンコーディングに65001: Unicode (UTF-8)を選んでください。ファイル自体は正しいのです。Googleスプレッドシートに取り込む場合は、インポート時に文字コードでUTF-8を選ぶと同じ問題を避けられます。

ページのオプションはどこにつながるか

5つの工程が対応付けできれば、コンバーターのオプションは配線図として読めます。入れ子をフラット化のトグルは第3工程を有効化または迂回します。区切り文字の選択、カンマ、セミコロン、タブ、パイプは、第4工程が引用符を付ける対象の文字を決めます。ヘッダー行を含めるトグルは、第4工程で列名の行を追加または削除します。自動変換は、ボタンを待たずに、キー入力のたびにパイプライン全体を再実行するだけです。設定を変えるたびに結果がどう変わるか、その場で確かめられるのがこの配線の利点です。

パーサーに届くオプションはありません。それは意図的です。検証は好みの問題ではないからです。第1工程を無効化できるコンバーターは、壊れた入力から自信満々のゴミを作ってしまいます。入力の正しさは譲れない土台なので、ここだけは自動で守られるようになっています。

出力がおかしいときは、原因の部品を1つだけ疑う

パイプラインを知ることの意味は、診断にあります。症状を工程に対応付ければ、どこを見るべきかが分かります。以下の6つは、このページの利用者から実際に多い症状を工程別に整理したものです。

  • 位置を示すエラーメッセージ:第1工程、パーサーが原因です。JSONが報告された位置の近くで壊れています。検証して、元のデータを修正してください。JSONLintのような検証ツールで位置を確認すると修正が速くなります。
  • 行が少なかったり列がなかったり:第2工程、行ファインダーが原因です。コンバーターが意図したものとは違うリストを選んだか、包みの形に混乱しています。
  • 入れ子のデータが読めないJSONテキストとしてセルに入っている:第3工程、フラットナーがオフになっているか、データが深すぎます。フラット化をオンにしてください。
  • 開くとすべてが1列に入る:第4工程、シリアライザーが使った区切り文字が、表計算ソフトの期待と違います。再インポートして正しい区切り文字を選ぶか、セミコロンやタブで作り直してください。
  • 余計な引用符や分割された行:第4工程の引用符処理が原因です。通常は引用符モードのnever設定か、手で編集したCSVが原因です。引用符は自動のままにしてください。手で編集したCSVは引用符の対応が崩れやすいので、作り直しをおすすめします。
  • 開いたときに変な文字:第5工程、ダウンロードのエンコーディングが原因です。ダブルクリックではなく、UTF-8(65001)で再インポートしてください。

JSON CSV 変換オンラインツールができないこと

パイプラインは境界線も定義します。コンバーターはJSONエディターではありません。データを修正したり、フィールド名を変えたり、列の意味を決めたりはできません。JSONフォーマッターでもありません。ただしパーサーが副作用として検証するので、きれいに整形されたJSONが欲しいなら別のツールです。スプレッドシートでもありません。CSVをダウンロードしたら、並べ替え、フィルター、数式はExcelやスプレッドシートで行います。コンバーターの中ではありません。つまりコンバーターは「形を変える専門」の道具で、内容の編集や分析は範囲外なのです。

そして、データの意味を変えることはできません。フラット化は値を保ちますが型を潰します。数値、真偽値、nullはすべてテキストになり、入れ子構造は列名になり、CSVだけから元のツリーに戻る方法はありません。行の形がばらばらな場合、コンバーターはすべての列の和集合を取り、フィールドのない行は空白のままにします。これは誠実な動作ですが、変換前に知っておく価値があります。コンバーターはあなたのデータを忠実に並べ替えるもので、約束できるのは忠実さだけです。この「戻れない」性質を理解しておくと、元のJSONを残しておくべき理由も分かります。

関連ガイド

よくある質問

JSON CSV 変換オンラインツールとは何ですか?一言で言うと?

JSONデータをCSVファイルに変換するウェブページのことです。5つの工程、パーサー、行ファインダー、フラットナー、引用符エンジン、ダウンロードで変換し、パイプライン全体がブラウザのタブの中で実行されます。サーバーに送らないので、機密データでも安心して使えます。

JSON CSV 変換ツールの5つの部品とは何ですか?

パーサーはJSONを検証します。行ファインダーは何が行になるかを決めます。フラットナーは入れ子の値を平らなセルに変換します。シリアライザーは正しい引用符で有効なCSVテキストを書き出します。ダウンロードの段階はファイルを渡します。ページのオプションは真ん中の3つの部品につながっています。最初のパーサーと最後のダウンロードは固定で、利用者が操作できるのは真ん中の3つです。

なぜ一部のセルだけ引用符で囲まれるのですか?

引用符は使われている区切り文字に従います。セルが引用符で包まれるのは、アクティブな区切り文字、引用符文字、改行のいずれかを含む場合だけで、内部の引用符は2つに増やされます。区切り文字を変えると引用符が付くセルも変わります。これは正しい動作であって、不整合ではありません。たとえばカンマ区切りでセルにカンマがなければ、引用符は付きません。

変換結果がExcelで1列に開かれるのはなぜですか?

これはシリアライザー工程での区切り文字の不一致であって、壊れたデータではありません。Excelはシステムのリスト区切り文字で列を分割します。これは地域によってカンマの場合もセミコロンの場合もあります。ファイルを再インポートして一致する区切り文字を選ぶか、セミコロンやタブのオプションでCSVを作り直してください。地域設定でリストの区切り文字がセミコロンになっている国では、特によく起きます。

JSON CSV 変換ツールはJSONフォーマッターと同じですか?

いいえ。フォーマッターは人間が読めるようにJSONをきれいに整形します。コンバーターは表計算ソフトが開けるようにJSONを表に再構成します。コンバーターのパーサーは副作用としてJSONを検証するので、無効な入力では表ではなくエラーが出ますが、整形は本来の仕事ではありません。整形したいだけならフォーマッター、表にしたいならコンバーター、と使い分けてください。

壊れたJSONや無効なJSONをコンバーターが修正できますか?

できません。修正しようとするツールは信用しないほうがよいでしょう。パーサー工程は形式の壊れたJSONを却下し、どこで止まったかを位置で示すエラーを出します。報告された位置の近くにある引用符の抜けや末尾のカンマを、元のデータで修正してから再度変換してください。エラーの位置情報は、たいていの場合その直前か直後に原因があります。

コンバーターはデータを変更しますか?形式だけですか?

値は保たれますが、形は変わります。フラット化は入れ子のオブジェクトをドット記法の列に、リストを連結したセルに変換し、すべての値がテキストになります。数値、真偽値、nullは型を失います。形の違う行はすべての列の和集合になり、フィールドのない箇所は空白になります。元のJSONは手元に残しておくことをおすすめします。CSVからは完全には戻せません。

5つの部品の動きを見てみましょう

このページのコンバーターに任意のJSONを貼り付けて、パーサー、フラットナー、引用符エンジンの仕事を見てみましょう。無料、登録不要、すべてブラウザ内で動作します。

JSON CSV コンバーターを開く
ガイド一覧