CSV⇄JSON変換

CSV(TSV)とJSONを相互変換します。引用符で囲まれたカンマや改行も正しく処理し、 1行目を見出しにしたオブジェクトの配列に変換できます。データは送信されません。

左に貼り付けると変換されます。

使い方

変換の向きを選び、区切り文字(カンマ・タブ・セミコロン)を合わせてから貼り付けます。 表計算ソフトからコピーした場合はタブ区切りになっていることが多いので、「タブ」を選んでください。

変換の例

CSVJSON(見出しあり・型変換あり)
name,age
田中,30
佐藤,25
[{"name":"田中","age":30},
{"name":"佐藤","age":25}]

「1行目を見出しとして使う」のチェックを外すと、各行がそのまま配列になります([["name","age"],["田中","30"]])。 見出しが空欄の列は column2 のように連番で補います。

引用符の扱い(RFC 4180)

CSVで値にカンマや改行を含めたいときは、その値全体を二重引用符で囲みます。値の中に引用符そのものを入れたいときは"" と2つ重ねます。このツールはこの決まりに沿って読み書きします。

CSVの書き方読み取られる値
a,"b,c"「a」と「b,c」の2項目
a,"b""c"「a」と「b"c」の2項目
a,"1行目(改行)2行目"2項目。2つ目の値の中に改行が入る

JSON→CSVの向きでは、値にカンマ・改行・引用符が含まれる場合だけ自動で引用符を付けます。不要な場所には付けません。

型変換の仕様

  • 数値になるもの30 -1.5 のように、先頭に余分な0が付かない数字。
  • 文字列のまま残すもの007 +81 03-1234-5678 など。 郵便番号・電話番号・IDが壊れないようにするためです。
  • true / false / null — その通りの真偽値・null に変換します。
  • チェックを外すと、すべて文字列のまま出力します。データを厳密に保ちたいときはこちらを選んでください。

使うときの注意

  • 引用符が閉じられていないCSVはエラーになります。データの途中が欠けていないか確認してください。
  • JSON→CSVはトップレベルが配列([...])のものだけ変換できます。オブジェクト単体は対象外です。
  • 入れ子の値はJSON文字列としてセルに入ります。表として扱いたい場合は事前に平坦化してください。
  • 末尾の改行は空行として扱いません。最終行が欠けていないか、件数の表示で確認してください。
  • 非常に大きなファイルはブラウザの負荷が高くなります。数万行を超える場合は分割をおすすめします。

よくある質問

値にカンマや改行が入っていても大丈夫ですか?

大丈夫です。RFC 4180 の書き方に沿って、二重引用符(")で囲まれた範囲の中にあるカンマ・改行は値の一部として扱います。囲みの中の "" は引用符1文字に戻します。

「007」が 7 になってしまいます。

なりません。先頭に0が付く数字は郵便番号や電話番号のことが多いため、文字列のまま残す仕様です。型変換をすべて止めたい場合は「数値・true/false・null を型変換する」のチェックを外してください。

JSONからCSVにするとき、要素ごとに項目が違っても変換できますか?

できます。すべての要素に現れるキーを集めて見出し行を作り、その要素に無いキーは空欄にします。

入れ子になったJSONは変換できますか?

値が配列やオブジェクトの場合は、その部分をJSONの文字列としてセルに入れます。CSVは表形式なので、入れ子構造をそのまま表現することはできません。事前に平坦な形へ整えてからお使いください。

Excelで開くと文字化けします。

このツールが出すのは文字コードの情報を持たないテキストです。Excelで直接開くと環境によってはUTF-8と認識されません。「データ」タブの「テキストまたはCSVから」を使い、文字コードにUTF-8を指定して読み込んでください。

データはサーバーに送信されますか?

いいえ。変換はすべてブラウザ内で行われ、貼り付けたデータが外部へ送信・保存されることはありません。

関連ツール

JSONを見やすく整えるなら JSON整形、改行リストとカンマ区切りの行き来は リスト⇄区切り変換 が手軽です。列の値をまとめて置き換えるなら 文字列一括置換、数値列の集計は 平均・合計・標準偏差 をどうぞ。