JSON⇄CSV変換
JSON ⇄ CSV
入れ子のJSONをドット記法の列名で平らに開くか、表からオブジェクトを組み直します。
JSONのオブジェクト配列を表計算の表に変えます。レコード1件が1行、キー1つが1列です。難しいのは表に置き場のないもの——入れ子のオブジェクト、配列、そしてキーが揃っていないレコード——をどう扱うかで、それはページ上部で自分で選ぶようになっています。
user.address.city がそれぞれ独立した列になります。
tags.0, tags.1 — いちばん横に広がりますが、何も失いません。
値のないところは空のセルになります。
JSON入力
.json ファイルを置く
このタブの中で読みます。アップロードはしません。
CSV出力
ダウンロードするファイルにはUTF-8のBOMが付きます。Windows版Excelが日本語をCP932(Shift_JIS)として読まないようにするためです。コピーボタンはBOMなしのテキストを渡します。
使い方
オブジェクトの配列を貼り付けます
表が求めるのはこの形です。オブジェクト1つなら1行になり、配列を包んだオブジェクト——APIがよく返す`{ "data": [...] }`の形——は自動で外し、そのことを下に表示します。
入れ子をどこまで開くかを決めます
ドット記法を選ぶと`user.address.city`がそれぞれ列になります。シートを絞り込んだりピボットしたりするならこちらです。1段目だけを選ぶと`user.address`はJSONの入った1つのセルとして残り、幅が狭く、元にも戻しやすくなります。
配列の扱いを決めます
要素ごとに列(`tags.0`、`tags.1`)にすると何も失いませんが、文書の中でいちばん長い配列に合わせて表が広がります。連結は1つのセルに`a; b; c`と入れる形で、読みやすくなります。JSONのままは角括弧を残すので、後の工程でもう一度パースできます。
プレビューで列の型を確かめます
列見出しには値が実際に持っていた型が付き、欠けているレコードがあれば「ある件数/全体」も並びます。`mixed`と出た列は、たいてい後で問題になる場所です。
CSVでダウンロードするか、TSVでコピーします
CSVのダウンロードには先頭にUTF-8のBOMを付けてあるので、WindowsのExcelでも日本語がそのまま開きます。ファイルを開くのではなくシートに貼り付けるなら、TSVに切り替えてコピーボタンを使ってください。
よくある質問
Excelで日本語が文字化けするのはなぜですか
BOMなしで保存されたファイルだからです。日本語版WindowsのExcelは、BOMのないUTF-8のCSVをいまだにCP932(Shift_JIS)と推測します。ここのダウンロードボタンはBOMを付けます。コピーボタンは意図的に付けません。テキストエディタに貼り付けたとき、BOMが余計な文字として見えてしまうためです。
CSVからJSONへ戻せますか
このページは一方向だけです。そもそも往復には必ず損失があります。ドットの付いた列名はオブジェクトに組み直せますが、連結した配列は、たまたまセミコロンが入っていた文字列と区別できません。
キーが揃っていないレコードはどうなりますか
「不揃いの行」の設定がそれにあたります。すべてのキーは全部を残して空欄を置き、共通のキーのみは全レコードにない列を落とし、先頭行のキーは1件目をスキーマとみなして残りを黙って無視します。既定としては1番目が安全で、不揃いのファイルを受け付けない取り込み側があるなら2番目を選びます。
大きな数値はそのまま残りますか
パースはブラウザが行うので、2^53を超える数値は表を組む前にすでに丸められています。表計算ソフトは開くときにもう一度丸めます。長いidはJSONの中で文字列にしておくのが正しく、それでもExcelが書式を付け直すことがあるため、シートでは先頭にアポストロフィを置いて防ぐのが普通です。
ここから渡せます
Markdown表作成
Markdown Table Builder
表をグリッドで編集して桁の揃ったMarkdownを書き出すか、崩れた表を貼り付けて整え直します。
JSON Lines変換
JSON Lines Converter
NDJSONとJSON配列を相互に変換し、解析できない行は変換を止めずに行番号で知らせます。
jq実験場
jq Playground
貼り付けたJSONにjq 1.7のフィルタをブラウザ内で実行し、チートシートと同じ結果を出すコマンドラインを渡します。
JSONフォーマッター・検証
JSON Formatter & Validator
JSONを整形・圧縮して検証し、構文エラーがあれば行と列を正確に指し示します。
次の一手
このツールが出したものをそのまま受け取れる道具です。
CSVをExcelに
CSV to Excel
1つでも複数でもCSVを、列の型・見出し行・フィルタを付けた.xlsxブックにまとめます。
CSVビューアー
CSV Viewer
大きな区切りファイルを丸ごとメモリに載せずに開き、列の型・統計・並べ替えを表示します。
JSONフォーマッター・検証
JSON Formatter & Validator
JSONを整形・圧縮して検証し、構文エラーがあれば行と列を正確に指し示します。
JSON Lines変換
JSON Lines Converter
NDJSONとJSON配列を相互に変換し、解析できない行は変換を止めずに行番号で知らせます。
Base64エンコード・デコード
Base64 Encoder & Decoder
テキストでもファイルでもBase64とBase64URLを符号化・復号し、UTF-8も正しく扱います。
curlをコードに変換
curl to Code
curlのコマンドをfetch・axios・Pythonのrequests・Go・PHP・PowerShellのコードに変換します。