言語選択

CSVをJSONに変換するオンラインツール|Callculation

カンマ区切りやタブ区切りのCSVをJSON配列またはNDJSON形式に変換。特殊文字や改行を含むデータにも対応。

Mehmet Demiray 公開日 更新日
共有
CSV内の値を区切る文字
1行目を列名として扱います
数値とtrue/falseをテキストではなく適切な型として解析します
入力内の空行を無視します
JSON出力のフォーマットに使用するスペース

CSVとJSONの違いと変換の必要性

CSV(Comma-Separated Values)とJSON(JavaScript Object Notation)は、どちらもデータを保存・交換するためのフォーマットですが、構造と用途が大きく異なります。CSVは表形式のデータをシンプルに表現し、ExcelやGoogle スプレッドシートで広く使われています。たとえば、商品名、価格、在庫数といった列を持つテーブルデータに向いています。一方、JSONは階層構造をサポートし、オブジェクトや配列をネストできるため、Web APIや設定ファイルなど、より複雑なデータ構造を扱うのに適しています。たとえば、ECサイトの商品情報で「仕様」フィールド内にサイズや素材などのサブ項目を含む場合、CSVではフラットな構造しか表現できませんが、JSONなら自然に階層化できます。そのため、スプレッドシートで管理していたデータをWebアプリケーションに取り込む際や、APIでデータを受け渡す必要がある場合に、「CSVをJSONに変換」ツールが役立ちます。特に、日本国内の開発現場では、業務システムからエクスポートされたCSVをモダンなフロントエンドやクラウドサービス向けにJSON形式に変換するケースが多く見られます。

「CSVをJSONに変換」の仕組みと処理フロー

「CSVをJSONに変換」ツールは、まず入力されたCSVデータを解析(パース)します。この際、区切り文字としてカンマだけでなく、セミコロンやタブにも対応しており、日本語環境でよく使われるShift_JISエンコーディングやUTF-8の両方を自動検出します。1行目は通常、JSONオブジェクトのキー(プロパティ名)として使用されます。たとえば、CSVの1行目に「氏名,年齢,都道府県」とあれば、各レコードは { "氏名": "山田太郎", "年齢": 32, "都道府県": "東京都" } のようなJSONオブジェクトになります。ツールは引用符で囲まれたフィールドや、改行を含むマルチライン値も正しく処理します。たとえば、メモ欄に「注文時に要相談\n納期:2週間」といった内容があっても、エスケープされてJSON文字列として保持されます。出力形式は、標準的なJSON配列([ {...}, {...} ])のほか、各行が独立したJSONオブジェクトとなるNDJSON(Newline-Delimited JSON)にも対応しており、大規模データのストリーミング処理に便利です。変換中に不正なデータが検出された場合は、エラーメッセージで具体的な行番号と内容を提示し、迅速な修正を支援します。

実践的な活用シーン:開発・運用でのCSV to JSON変換

「CSVをJSONに変換」は、さまざまな実務シーンで活用されています。たとえば、社内の顧客管理表(CSV)をWeb API経由でCRMシステムに取り込む際、APIがJSON形式を要求している場合があります。このようなとき、手動で変換するのは非効率でミスも起こりやすいため、このツールを使えば一括で正確に変換可能です。また、レガシーシステムからエクスポートされた設定データを、新しいマイクロサービスアーキテクチャ向けに移行する際にも有用です。例えば、配送設定のCSV(地域コード、送料、最短日数など)をJSONに変換し、Node.jsやPythonのバックエンドで直接読み込めるようにできます。さらに、データ分析パイプラインにおいて、BigQueryやSnowflakeなどのクラウドデータウェアハウスにCSVを投入する前に、中間処理としてJSON形式に変換してスキーマを明確にするケースもあります。日本企業では、経費精算データや在庫リストなど、日常的に生成されるCSVを、社内ダッシュボードやモバイルアプリ向けにJSONへ変換して利用する事例が増えています。必要に応じて、逆変換(JSON→CSV)も検討すると、双方向のデータ連携がスムーズになります。

特殊文字・ネスト構造・変換の限界について

CSVは本質的にフラットな構造のため、JSONのようなネストされたデータ(例:住所フィールド内に「郵便番号」「市区町村」「番地」を含む)を直接表現できません。「CSVをJSONに変換」ツールでは、このようなケースに対応するため、事前にCSVのカラム設計を工夫する必要があります。たとえば、「住所_郵便番号」「住所_市区町村」といったプレフィックス付きのカラム名を使うことで、後続のスクリプトで自動的にネスト構造に再構成できます。また、日本語特有の文字(例:「﨑」「髙」などの異体字)や絵文字を含むフィールドも、UTF-8エンコーディングが正しく設定されていれば問題なく処理されます。ただし、CSV内でダブルクォートや改行がエスケープされていない場合、パースエラーが発生することがあります。その際は、元のCSVを再エクスポートするか、手動で修正することを推奨します。変換自体は基本的に可逆的ではなく、元のCSVに存在しない構造情報をJSON側で追加することはできません。つまり、完全な「損失なし変換」は保証されませんが、正しい入力が与えられれば、すべてのデータ値は正確に保持されます。高度な整形が必要な場合は、JSON Formatterと組み合わせると可読性が向上します。

CSVをJSONに変換する手順と注意点

「CSVをJSONに変換」ツールを使ってCSVデータをJSONに変換するには、まず変換したいCSVファイルを準備します。ファイルはテキスト形式で、1行目にヘッダー(列名)が含まれていることが前提です。次に、ツールの入力欄にCSVの内容を貼り付けるか、ファイルをドラッグ&ドロップします。区切り文字がカンマ以外(例:セミコロンやタブ)の場合は、オプションで指定してください。特に日本のExcel環境では、地域設定によって区切り文字がタブになることがありますので注意が必要です。変換ボタンを押すと、ツールは自動的にCSVを解析し、JSON形式で結果を表示します。出力形式として「JSON配列」または「NDJSON」を選べます。前者は一般的なWebアプリケーション向け、後者はログ処理やストリーミングデータ向けです。変換後のJSONは、そのままコピーしてアプリケーションコードに埋め込んだり、ファイルとして保存したりできます。誤って変換した場合は、ブラウザのリロードで初期状態に戻せます。大量データを扱う際は、メモリ制限に注意し、必要に応じてデータを分割してください。他のフォーマットとの連携が必要な場合は、XML to JSONYAML to JSONも併用可能です。

最もよくいただく質問

CSVをJSONに変換するにはどうすればいいですか?

「CSVをJSONに変換」ツールでは、CSVデータをテキストエリアに貼り付けるか、ファイルをアップロードするだけで変換できます。1行目がJSONのキーとして使われ、各行が個別のオブジェクトになります。区切り文字(カンマ、セミコロン、タブなど)や引用符付きフィールドも自動で認識します。

CSVとJSONの主な違いは何ですか?

CSVは表形式のシンプルなテキストフォーマットで、主にスプレッドシートやデータベースのエクスポートに使われます。一方、JSONは階層構造を持ち、Web APIや設定ファイルなどで広く使われる構造化されたデータフォーマットです。複雑なデータ構造やネストを表現できる点が大きな違いです。

特殊文字や改行を含むCSVフィールドは正しく変換されますか?

はい。「CSVをJSONに変換」はRFC 4180準拠のCSVパーサーを使用しており、ダブルクォートで囲まれたフィールド内の改行、コンマ、特殊文字(例:é, ñ, ü)も適切にエスケープしてJSON文字列に変換します。出力は有効なJSONとして保証されます。

変換は完全に可逆ですか?元のCSVに戻せますか?

必ずしも可逆ではありません。JSONはCSVよりも表現力が高いため、変換自体は情報損失なく行えますが、元のCSVの書式(例:余分な空白、コメント行、特定の区切り文字)は保持されません。逆変換が必要な場合はJSONをCSVに変換をご利用ください。

ネストされたデータ(例:住所やタグの配列)をCSVからJSONに変換できますか?

標準的なCSVはフラット構造のため、直接ネストを表現できません。ただし、事前にCSVのフィールドにJSON文字列を埋め込んでおけば、それをパースしてネスト構造に展開する設定が可能です。詳細は高度な変換オプションをご確認ください。

変換結果はNDJSON(改行区切りJSON)でも出力できますか?

はい。出力形式として「JSON配列」だけでなく「NDJSON(Newline-Delimited JSON)」も選択できます。これはストリーミング処理や大規模データパイプラインでよく使われるフォーマットで、各行が独立したJSONオブジェクトになります。