ZeroTool Workbench

CSV JSON 変換器

CSVとJSONを即座に相互変換。引用符付きフィールド対応、ヘッダー自動検出。無料、ブラウザ完結。

100% クライアントサイド データはブラウザ外に出ません 無料 · 登録不要

使い方

  1. CSV → JSON:CSVデータを入力欄に貼り付け、変換をクリックします。
  2. JSON → CSV:JSONオブジェクト配列を入力欄に貼り付け、変換をクリックします。
  3. 結果をコピーまたはダウンロードします。

CSVとJSONについて

CSVはスプレッドシートやデータベースのエクスポートによく使われ、JSONはAPIやWebアプリで広く使われるデータ形式です。両者の変換はデータ処理・分析・移行作業でよく必要になります。

エッジケース:このコンバーターの動作

空のフィールド。 次の CSV では、Bob の email と 3 行目の name が空です。

id,name,email
1,Alice,[email protected]
2,Bob,
3,,[email protected]

既定では空のフィールドは "" になります。「空フィールド → null」にチェックを入れると null になります。

[
  { "id": 1, "name": "Alice", "email": "[email protected]" },
  { "id": 2, "name": "Bob", "email": null },
  { "id": 3, "name": null, "email": "[email protected]" }
]

型の自動変換。 「数値・真偽値を自動変換」にチェックがある場合(既定)、引用符のない true・false・null(大文字小文字は問わない)は JSON のリテラルに、数値は JSON の数値になります。情報を失わないよう、次の 3 種類は文字列のまま残ります:引用符付きのフィールド("42")、先頭が 0 の値(007、0123)、JavaScript の数値で正確に表せない大きな整数(2^53 − 1 超。長い注文番号など)。

ヘッダー行。 1 行目は常にヘッダーとして扱います。ヘッダーのない CSV は、先頭にヘッダー行を追加してから変換してください。同じ名前の列が 2 つあると、後の列が前の列を上書きするので、先に名前を変えてください。ヘッダーより多いフィールドは捨てられ、足りないフィールドは空として扱われます。

区切り文字。 カンマだけを認識します。セミコロン区切りやタブ区切りのファイルは、先にカンマ区切りに変換してください。

JSON → CSV。 入力はオブジェクトの配列である必要があります。列はどれかのオブジェクトに出てくるすべてのキーで、最初に出てきた順に並びます。キーがない行は空欄になります。ネストしたオブジェクトは user.name のようなドット区切りの列に展開し(pandas の json_normalize と同じ列名)、配列と空のオブジェクトは JSON テキストのまま、null は空欄として書き出します。

[
  { "id": 1, "user": { "name": "Alice", "city": "London" }, "tags": ["admin", "ops"], "manager": null },
  { "id": 2, "user": { "name": "Bob" } }
]
id,user.name,user.city,tags,manager
1,Alice,London,"[""admin"",""ops""]",
2,Bob,,,

この CSV を JSON に戻してもネストは復元されません。user.name は 1 つのキーのまま、配列は文字列のままです。

FAQ

カンマ以外の区切り文字も使えますか?

いいえ。区切り文字はカンマのみです。セミコロン区切りやタブ区切り(TSV)のファイルは、先にカンマ区切りに変換してください。

引用符で囲まれたフィールドに対応していますか?

はい。RFC 4180準拠の引用符処理に対応しており、フィールド内のカンマや改行も正しく処理されます。

JSONからCSVに変換できますか?

はい。オブジェクトの配列であれば、全オブジェクトのキーをヘッダー行にして CSV を生成します。ネストしたオブジェクトは user.name のようなドット区切りの列に展開し、配列は JSON テキストとして書き出します。

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

いいえ。すべての変換処理はブラウザ内で完結します。