CSV to JSON コンバーター
はじめに
CSV to JSON コンバーターは、スプレッドシート形式のデータと構造化JSONの間のギャップを埋めます。ExcelからWebアプリケーションへのデータインポート、データベースエクスポートからのAPIペイロード準備、設定ファイルの変換など、このツールは正確かつ柔軟に変換を処理します。
インストールが必要なコマンドラインツールや、データをサーバーにアップロードするオンラインサービスとは異なり、Toollect CSV to JSON コンバーターはブラウザ内で完全に動作します。キーを打つたびにJSON出力がリアルタイムで更新され、即座にフィードバックが得られます。ネットワーク経由でのデータ送信は一切ないため、速度とプライバシーの両方を提供します。
スマートな区切り文字検出、型推論、複数の出力形式、ライブプレビューテーブルを備えたこのコンバーターは、CSV変換を煩わしくするエッジケース(カンマを含む引用符付きフィールド、複数行の値、不整合な列数など)にも対応します。
仕組み
コンバーターは、精度と柔軟性のために設計されたマルチステージパイプラインを通じてCSVデータを処理します。
パース
ツールは、RFC 4180規約に従うカスタムパーサーを使用してCSV入力を1行ずつ読み取ります。以下のものを適切に処理します:
- 引用符で囲まれたフィールド:二重引用符で囲まれたフィールドには、区切り文字、改行、その他の特殊文字を含めることができます
- エスケープされた引用符:フィールド内の二重引用符は、連続する2つの二重引用符(
"")で表されます - 空のフィールド:連続する区切り文字は空の文字列値を生成します
- 末尾の空白:引用符の外側の空白は、クリーンな出力のためにトリミングされます
区切り文字検出
自動検出モードでは、ツールはデータの最初の数行を分析し、各候補区切り文字(カンマ、タブ、セミコロン)をテストして、最も一貫した列数を生成するものを選択します。検出された区切り文字はいつでも手動で上書きできます。
型推論
型推論を有効にすると、ツールは各値をスキャンして認識されたパターンを変換します:
- 数値:整数と小数(
42、3.14、-1.5、1e10)はJSON数値になります - ブール値:
trueとfalse(大文字小文字を区別しない)はJSONブール値になります - Null:
null(大文字小文字を区別しない)はJSONnullになります - 文字列:その他はすべて文字列のままです
JSONオブジェクトや配列のように見えるフィールドを解析しようとするJSON値解析を有効にすることもできます。
出力フォーマット
最終的なJSON出力は、選択したオプションに従って生成されます:
- オブジェクト配列:各行がヘッダー行の値をキーとするオブジェクトになります(デフォルト)
- 2D配列:ヘッダー行を無視して、配列の配列として出力
- 最初の列でキー付け:各データ行の最初の列の値がキーとなるオブジェクト
出力は、整形(2または4スペースのインデント)または1行にミニファイすることができます。
使用方法
Toollect CSV to JSON コンバーターを使用するのに設定や登録は必要ありません。次の手順に従ってください:
-
ツールを開く — CSV to JSON コンバーターページに移動します。インターフェースには、アップロードゾーン、入力テキストエリア、設定パネル、出力エリアが表示されます。
-
データを入力する — CSVテキストをテキストエリアに直接貼り付けるか、アップロードゾーンをクリックするか(または.csvファイルをドラッグ&ドロップして)ファイルをロードします。
-
設定を確認する — ツールは自動的に区切り文字を検出し、デフォルトでヘッダーと型推論を有効にします。データに合わせてこれらの設定を調整してください:
- 自動検出が正しくない場合は別の区切り文字を選択
- データにヘッダー行がない場合は「最初の行をヘッダーとして使用」を切り替え
- すべての値を文字列として保持するには型推論を無効化
-
パースされたデータをプレビューする — 「プレビューを表示」をクリックして、パースされたCSVデータのテーブルビューを表示します。これにより、区切り文字とヘッダー設定が正しいかどうかを確認できます。
-
JSON出力を確認する — JSON出力は入力中に自動的に更新されます。出力テキストエリアは読み取り専用で、誤った編集を防ぎます。
-
コピーまたはダウンロードする — 「コピー」をクリックしてJSONをクリップボードにコピーするか、「JSONをダウンロード」をクリックして.jsonファイルとして保存します。
チュートリアル
このチュートリアルでは、ExcelからエクスポートしたCSVファイルをWebアプリケーションで使用するJSON配列に変換する手順を説明します。
シナリオ:製品在庫を追跡するExcelスプレッドシートがあり、JSONを期待するWebアプリにインポートしたいとします。
- Excelからエクスポート — スプレッドシートをCSVファイルとして保存します。以下のような内容になります:
Product Name, SKU, Price, In Stock, Category
Widget Pro, WDG-001, 29.99, true, Tools
Gadget X, GDG-002, 49.95, false, Electronics
Super Tool, SUP-003, 99.00, true, Tools
Accessory Pack, ACC-004, 14.99, true, Accessories
-
CSV to JSON コンバーターを開き、CSVファイルをアップロードゾーンにドラッグします。ツールがファイルをロードし、カンマ区切り文字を検出して、データを即座に変換します。
-
プレビューを確認する — 「プレビューを表示」をクリックしてテーブル表示を確認します。ヘッダー行が正しくパースされていることを確認してください。
-
JSON出力 は次のように表示されます:
[
{
"Product Name": "Widget Pro",
"SKU": "WDG-001",
"Price": 29.99,
"In Stock": true,
"Category": "Tools"
},
{
"Product Name": "Gadget X",
"SKU": "GDG-002",
"Price": 49.95,
"In Stock": false,
"Category": "Electronics"
},
{
"Product Name": "Super Tool",
"SKU": "SUP-003",
"Price": 99,
"Category": "Tools"
},
{
"Product Name": "Accessory Pack",
"SKU": "ACC-004",
"Price": 14.99,
"In Stock": true,
"Category": "Accessories"
}
]
Price値は数値(文字列ではない)、In Stock値はブール値であり、「Super Tool」の欠落している「In Stock」値は省略されていることに注目してください。
- キー変換を試す — キーケースドロップダウンから「snake_case」を選択します。出力が次のように変わります:
[
{
"product_name": "Widget Pro",
"sku": "WDG-001",
"price": 29.99,
"in_stock": true,
"category": "Tools"
}
]
- キー付き形式を試す — 「最初の列でキー付け」を選択して、製品名でインデックスされたオブジェクトを取得します:
{
"Widget Pro": {
"SKU": "WDG-001",
"Price": 29.99,
"In Stock": true,
"Category": "Tools"
},
"Gadget X": { ... }
}
- 結果をダウンロードする — 「JSONをダウンロード」をクリックして、Webアプリケーションで使用できる.jsonファイルとして保存します。
プロのヒント
これらのテクニックをマスターして、Toollect CSV to JSON コンバーターを最大限に活用してください:
-
最初にプレビューを使用する:JSON出力を信頼する前に、必ずプレビューテーブルを確認してください。列の不一致、誤った区切り文字、エンコーディングの問題は、テーブルプレビューですぐに確認できます
-
先頭のゼロを処理する:郵便番号、電話番号、IDには先頭にゼロが付いていることがよくあります。型推論を無効にして文字列として保持してください — そうしないと
00123が数値123になります -
列名を正規化する:キーケース設定を使用して、一貫性のないヘッダーを統一された形式に変換します。API統合には、通常camelCaseまたはsnake_caseが推奨されます
-
CSVを事前にクリーニングする:末尾の空行を削除し、行間で列数が一貫していることを確認し、引用符で囲まれたフィールドが二重引用符を使用していることを確認してください
-
他のツールと組み合わせる:ここでCSVをJSONに変換した後、JSONフォーマッターを使用して構造を検証および検査します
代替手段
Toollect CSV to JSON コンバーターは包括的な機能セットを提供しますが、さまざまなユースケースに対応する代替手段もいくつか存在します。
| ツール / 方法 | 最適な用途 | 制限事項 |
|---|---|---|
| Toollect CSV to JSON コンバーター | ブラウザベース、プライバシー優先、カスタマイズ可能な変換 | 初回ページロードが必要 |
| PapaParse(JavaScriptライブラリ) | Node.jsやブラウザアプリでのプログラム的なCSVパース | コーディングが必要、GUIなし |
| csvkit(コマンドライン) | PythonベースのCSV処理・変換パイプライン | Pythonのインストールが必要、コマンドラインのみ |
| オンライン変換サービス | 簡単な一回限りの変換 | データがサーバーにアップロードされる、プライバシー懸念 |
| Excel Power Query | Excel内でのCSVからJSONへの変換 | Excelが必要、小規模データセットに限定 |
| jq(コマンドライン) | CSV変換からのJSON出力処理 | 別途CSV-to-JSONステップが必要、コマンドラインのみ |
ブラウザから離れることなく、高速でプライベートかつ高機能なCSV to JSON変換を必要とするほとんどのユーザーにとって、Toollectコンバーターは機能性と利便性の最良のバランスを提供します。
トラブルシューティング
| 問題 | 考えられる原因 | 解決策 |
|---|---|---|
| JSONに「[null]」または空のオブジェクトが表示される | 区切り文字の検出に失敗したか、誤った区切り文字が選択された | ドロップダウンから正しい区切り文字を手動で選択 |
| 列の値が欠落/ずれている | フィールドに引用符なしの区切り文字が含まれている | CSVソースで区切り文字を含むフィールドを二重引用符で囲む |
| 先頭にゼロがある数値がゼロを失う | 型推論が数値に変換する | 型推論を無効にしてすべての値を文字列として保持 |
| 「行XにY列あります、Z列を期待しました」エラー | 行間で列数が不整合 | CSVに余分な/欠落した区切り文字がないか確認;改行を含む引用符付きフィールドは複数行にまたがる可能性あり |
| プレビューに文字化けが表示される | ファイルエンコーディングがUTF-8ではない | スプレッドシートアプリケーションからUTF-8としてCSVを再エクスポート |
| 大きなファイルのアップロードに失敗する | ファイルが10MB制限を超えている | アップロードではなくテキストエリアに直接データを貼り付ける |
| JSON出力が空 | 入力フィールドが空か空白のみ | CSVデータが正しく貼り付けられていることを確認 |
| コピーボタンが反応しない | ブラウザのクリップボード権限 | ブラウザ設定を確認;代替としてCtrl+C(Cmd+C)を使用 |
技術仕様
パフォーマンスベンチマーク
| データサイズ | 処理時間 | メモリ使用量 |
|---|---|---|
| 1 KB(10行) | < 1 ms | < 1 MB |
| 100 KB(1000行) | < 10 ms | < 5 MB |
| 1 MB(10000行) | < 100 ms | < 50 MB |
技術詳細
- パーサー:RFC 4180準拠のカスタムCSVパーサー、完全な引用符/エスケープ処理付き
- 型推論:数値、ブール値、null値に対する正規表現ベースの検出
- 区切り文字検出:最初の10行に対するヒューリスティックスコアリング、カンマ/タブ/セミコロンをテスト
- 出力エンジン:設定可能なインデント付きネイティブ
JSON.stringify() - ファイル処理:10MBサイズ制限付き
FileReaderAPI - クリップボード:2秒間のフィードバックインジケーター付き
navigator.clipboard.writeText() - ダウンロード:メモリ内ファイル生成のための
Blob+URL.createObjectURL()
ブラウザ互換性
| ブラウザ | 最小バージョン | ステータス |
|---|---|---|
| Google Chrome | 80+ | 完全対応 |
| Mozilla Firefox | 75+ | 完全対応 |
| Apple Safari | 13+ | 完全対応 |
| Microsoft Edge | 80+ | 完全対応 |
| Samsung Internet | 13+ | 完全対応 |
| Opera | 67+ | 完全対応 |
プライバシーとセキュリティ
- ゼロデータ送信:すべてのCSV処理はブラウザのメモリ内で行われます
- ファイルアップロードはFileReader APIを介してローカルで読み取られ、送信されることはありません
- Cookie、localStorage、sessionStorageは使用されません
- ツールページに分析やトラッキングスクリプトはありません
- 登録、ログイン、APIキーは不要です
機能
- ライブプレビュー付きの即時CSV to JSON変換
- スマート区切り文字自動検出(手動オーバーライド可能)
- 数値、ブール値、null値の型推論
- 複数の出力形式(オブジェクト配列、2D配列、キー付きオブジェクト)
- キーの大文字小文字変換(camelCase、snake_case、lowercase、UPPERCASE、Capitalize)
- 折りたたみ可能なデータプレビューで変換前にCSVを確認