CSV→JSON変換

CSVファイルをJSON配列(オブジェクトの配列)に変換します。区切り文字・見出し行の有無を指定でき、変換結果はコピー・ダウンロードできます。ファイルの内容はブラウザ内で処理されサーバーには送信されません。


区切り文字
先頭行を見出しとする
整形して表示(インデント付き)


            
            コピーしました!
            
          

CSVを入力すると、ここにJSONが表示されます。

CSVの行とJSONオブジェクトの対応

CSVの1行 name,age,city
変換後のJSONオブジェクト {"name": "...", "age": "...", "city": "..."}

先頭行を見出しとして使う場合、2行目以降の各行が、見出しの列名をキーにした1つのオブジェクトに変換されます。

Tips

  • 「先頭行を見出しとする」を有効にすると、1行目の値がJSONオブジェクトのキー名として使われます。無効にすると col1・col2… という連番キーになります。
  • 見出しに空欄や重複した列名がある場合は、その列だけ自動的に col{列番号} というキーに置き換わり、値の欠落を防ぎます。
  • 姉妹ツールの「JSON→CSV変換」と組み合わせることで、CSVとJSONを何度でも相互に変換できます。
  • ダブルクォートで囲まれたセル内のカンマ・改行・エスケープされた引用符("")にも対応したRFC 4180準拠のパーサーで変換するため、Excel等で出力した複雑なCSVも正しく変換できます。

よくある質問

既定では、1行目を見出しとして扱い、2行目以降の各行を「見出し名: 値」という形のオブジェクトに変換し、それらを配列でまとめたJSON(オブジェクトの配列)を出力します。APIのレスポンスやNoSQLデータベースへの投入データとしてよく使われる形式です。

はい。「区切り文字」で「タブ」を選択すれば、TSVファイルもそのままJSONに変換できます。

はい、CSV上のすべての値はテキストとして扱われるため、数値や真偽値に見える値もJSON上では文字列("123"や"true"など)として出力されます。数値として扱いたい場合は、変換後にJSON側で型変換してください。

いいえ。変換処理はすべてブラウザ内のJavaScriptで行われ、入力したCSVの内容がサーバーに送信されることはありません。個人情報を含むデータでも安心してご利用いただけます。
ツールくん

余談ですが ― なぜAPIはCSVではなくJSONを好むのか

CSVは表形式データを平易に表現できる一方、ネスト構造(配列や入れ子オブジェクト)を表現できないという制約があります。REST APIのレスポンスの多くがJSON形式を採用しているのは、1つのレコードの中に配列やオブジェクトを自由に埋め込めるため、CSVでは表現しきれない複雑なデータ構造もそのまま送受信できるからです。

一方でCSVには「Excelやスプレッドシートですぐに開ける」「1行が1レコードなので人間が目で確認しやすい」という捨てがたい利点があります。実務では「集計・確認はCSV、システム間連携はJSON」という使い分けが定着しており、本ツールのような相互変換の需要が絶えないのはこのためです。

JSON(JavaScript Object Notation)という名前にもかかわらず、現在ではJavaScript以外のほぼすべての言語で標準的にサポートされています。2001年にDouglas Crockfordによって仕様が公開されて以来、意図的に「特定の言語に依存しない最小限のデータ表現」として設計されてきたことが、この普及の大きな理由です。