Skip to content
DocsAll
教程

CSV to JSONチュートリアル:表データの構造化変換

Timi Tian · 公開日 2026年4月18日 · 更新日 2026年7月12日
CSVJSONデータ変換

なぜCSVをJSONに変換するのか

CSVは表データのフォーマットで、Excelのデフォルトエクスポート形式です。JSONはプログラムに優しいフォーマットで、API通信の標準です。CSVをJSONに変換することで、表データをプログラムが直接扱えるようになります。

よくあるユースケース:

  • Excelデータをウェブサイトのデータベースにインポート
  • 表データをAPIに連携
  • データ分析の結果をフロントエンドに渡してレンダリング
  • 設定をスプレッドシートからJSONファイルに移行

CSVとJSONの違い

CSVフォーマット

name,age,city
Tom,25,北京
Jerry,30,上海
  • プレーンテキスト、カンマ区切り
  • 最初の行がヘッダー
  • 1行が1レコード
  • 型なし(すべて文字列)
  • ネスト構造なし

JSONフォーマット

[
  {"name": "Tom", "age": 25, "city": "北京"},
  {"name": "Jerry", "age": 30, "city": "上海"}
]
  • 構造化、キーと値のペア
  • 型あり(文字列、数値、ブール値)
  • ネスト対応
  • プログラムが直接解析可能

変換の原理

ヘッダーのマッピング

CSVの最初の行がヘッダーです。JSONに変換する時、ヘッダーがオブジェクトのキーになります:

  • ヘッダー:name, age, city
  • 最初のデータ行:Tom, 25, 北京
  • 変換結果:{"name": "Tom", "age": "25", "city": "北京"}

データ型の認識

CSVのすべての値は文字列です。JSONに変換する時、型をスマートに認識できます:

  • 数値:"25" → 25(数値)
  • ブール値:"true" → true(ブール値)
  • 空値:"" → null(null)
  • 文字列:そのまま文字列

型認識しない場合はすべて文字列として扱われます。

配列の生成

CSVの各行が1つのオブジェクトになり、すべての行で配列を構成します:

[
  {オブジェクト1},
  {オブジェクト2}
]

ネスト構造

課題

CSVはフラットな表ですが、JSONはネストをサポートします。フラットなCSVをネストしたJSONに変換するには?

方法1:ドット記法

CSVヘッダーにドットを使って階層を表します:

name,address.city,address.zip
Tom,北京,100000

JSONに変換:

{
  "name": "Tom",
  "address": {
    "city": "北京",
    "zip": "100000"
  }
}

方法2:配列インデックス

name,tags[0],tags[1]
Tom,A,B

JSONに変換:

{
  "name": "Tom",
  "tags": ["A", "B"]
}

方法3:セミコロン区切り

name,tags
Tom,"A;B;C"

JSONに変換:

{
  "name": "Tom",
  "tags": ["A", "B", "C"]
}

変換ステップ

1. CSVを準備

CSVフォーマットが正しいことを確認:

  • 最初の行がヘッダー
  • フィールドはカンマ区切り
  • カンマを含むフィールドはダブルクォートで囲む
  • フィールド内のダブルクォートは2つのダブルクォートでエスケープ

2. アップロードまたは貼り付け

CSVの内容を変換ツールに貼り付けるか、CSVファイルをアップロードします。

3. オプションの設定

  • データ型を認識するかどうか
  • ネスト構造の処理方法
  • 出力フォーマット(配列か行ごとのオブジェクトか)

4. 変換

ツールが自動的に変換し、JSONを出力します。

5. バリデーション

JSONの結果が期待通りか確認:

  • フィールドは正しいか
  • 型は正しいか
  • ネストは正しいか

よくある問題

カンマを含むフィールド

カンマを含むCSVフィールドはダブルクォートで囲む必要があります:

name,desc
Tom,"Hello, world"

囲まないと2つのフィールドとして扱われ、変換エラーになります。

文字化け

CSVはUTF-8エンコードを使用してください。ExcelのデフォルトはGBKの可能性があるため、エクスポート時にUTF-8を選択します。

空値の処理

CSVの空セルをJSONでは空文字列 "" にするか、null にするか?

  • デフォルト:空文字列 ""
  • スマート認識:null
  • ツールのオプションによります

数値の精度

大きな数値はJSONに変換すると精度が失われる可能性があります。例えば18桁のID番号は、数値として扱うと科学表記になります。ID番号は文字列として扱う必要があります(CSVで先頭に引用符を付けるか、変換時に文字列型を指定)。

日付フォーマット

CSVの日付フォーマットは不統一です(2024-01-01、2024/1/1、Jan 1 2024)。JSONでは文字列のまま保持し、フロントエンドで解析します。

BOMヘッダー

ExcelからエクスポートしたCSVにBOMヘッダー(\uFEFF)が付く可能性があり、最初のフィールド名の前に不可視文字が入ります。変換ツールはBOMを自動的に削除する必要があります。

変換のコツ

CSVの前処理

変換前にExcelで整理します:

  • 空行の削除
  • 日付フォーマットの統一
  • フィールドの完全性チェック

選択的変換

必要な列だけ変換します。不要な列をCSVから削除し、JSONのサイズを削減します。

バッチ変換

非常に大きいCSVを一括変換すると重くなる可能性があります。数百行ずつバッチで変換します。

結果のバリデーション

変換後、JSONフォーマットツールで整形し、数件をサンプルチェックして正確性を確認します。

DocsAllで変換

CSV to JSONツール

  1. CSVファイルをアップロードまたはCSVの内容を貼り付け
  2. ツールが自動的にヘッダーとデータを解析
  3. 変換オプションを設定(型認識など)
  4. JSONを生成
  5. 結果をコピーまたはダウンロード

変換はブラウザ上で実行され、CSVデータはサーバーにアップロードされないため、機密データの処理に適しています。

逆変換:JSON to CSV

逆にJSONをCSVに変換したい場合もあります:

  • APIがJSONを返すが、Excelで分析するためにエクスポート
  • データベースのJSONフィールドを表形式でエクスポート

JSON to CSVの課題:

  • ネスト構造をフラット化する必要がある
  • 配列フィールドの処理(結合または複数行に展開)
  • フィールドが不統一の場合、空値で埋める

まとめ

CSV to JSONのポイントは、ヘッダーからキー名へのマッピング、データ型の認識、ネスト構造の処理です。カンマを含むフィールド、中国語のエンコード、空値、大きな数値の精度に注意してください。DocsAll CSV to JSONツールはブラウザ上で動作し、データが外部に漏れません。

T
Timi Tian 创始人 / 全栈工程师

DocsAll 创始人,10 年全栈开发经验,专注浏览器端文档处理技术与隐私保护架构。前新加坡科技公司技术负责人。