CSV

5 tools

ToolDeck の無料オンライン CSV ツールを使えば、ブラウザ上で CSV データの解析・変換・加工が直接行えます — ファイルのアップロード不要、アカウント登録不要。CSV を JSON に変換して API 対応の構造化配列を生成したり、JSON を CSV に変換してスプレッドシート用エクスポートを作成したり、CSV を Markdown に変換してドキュメントテーブルを生成したり、CSV を HTML に変換して埋め込み可能なテーブルマークアップを作成したり、CSV を SQL に変換してデータベースの INSERT 文を生成したりできます。すべてのパーサーは RFC 4180 に準拠しており、クォートされたフィールド、フィールド内のカンマ、混在する区切り文字も正しく処理されます。

The CSV→JSON コンバーターJSON→CSV コンバーター は最も一般的な双方向変換を処理します。CSV フォーマッター は区切り文字やクォートの問題を他のツールに渡す前に修正し、CSV→SQL 変換 はあらゆる対応データベースエンジンで使用可能な INSERT 文と CREATE TABLE スキーマを生成します — すべての処理はブラウザ内で実行され、ファイルのアップロードもアカウント登録も不要です。

CSV ツールとは?

CSV(Comma-Separated Values)は、最も古くから広くサポートされているデータ交換フォーマットの一つです。表形式のデータをプレーンテキストとして保存します。各行がレコードであり、レコード内のフィールドは区切り文字(通常はカンマですが、タブ、セミコロン、パイプも使用されます)で分割されます。RFC 4180 は正式な文法を定義しており、区切り文字・改行・ダブルクォートを含むフィールドのクォートルールも規定しています。

そのシンプルさにもかかわらず、生の CSV は現代の開発では扱いにくい面があります。Web API は JSON を期待します。フロントエンドフレームワークは行と列ではなくオブジェクトと配列にバインドします。MongoDB や Elasticsearch などのドキュメントデータベースは JSON をネイティブに取り込みます。リレーショナルデータベースでさえ、一括インポートの前に列の型を検証して不整合なフィールドを検出するための中間 JSON ステップが役立つことが多くあります。CSV ツールはフラットな表形式データをコードが直接利用できる構造化フォーマットに変換することで、このギャップを埋めます。

スプレッドシートのエクスポート、データベースダンプ、政府のオープンデータポータル、Google Analytics や Mixpanel などのアナリティクスプラットフォーム、区切り文字付きテキストを出力する ETL パイプラインを扱う場合に CSV ツールが必要になります。その都度パースのスクリプトを書く代わりに、ブラウザベースのコンバーターを使えば、クォートされたフィールド・埋め込まれた改行・混在する区切り文字などのエッジケースを正しく処理しながら即座に結果が得られます。クライアントから一回限りのエクスポートを受け取った場合、マイグレーションを書く前にカラムマッピングを確認したい場合、またはローカル環境を構築せずにベンダーのフィードをすばやく確認したい場合、ブラウザコンバーターはあらゆるスクリプト方式より迅速です。

ToolDeck の CSV ツールを使う理由

ToolDeck の CSV ツールは JavaScript を使用してブラウザ内でデータをすべて解析します。ファイルがマシンの外に出ることはなく、バックエンドが入力を処理することもなく、レート制限によって処理が遅くなることもありません。すべてのツールはモダンブラウザで動作します — 拡張機能、プラグイン、設定は一切不要です。結果として、ブラウザが動作するあらゆる環境で高速かつプライベートな CSV 処理が実現できます。

🔒
デフォルトでプライバシーを保護
すべての解析と変換はブラウザのタブ内で実行されます。顧客データ、財務データ、内部指標などを含む CSV データがリモートサーバーに送信されることはありません。
📐
RFC 4180 準拠
パーサーは CSV の RFC 4180 仕様に従っています。クォートされたフィールド、フィールド内のカンマ、エスケープされたダブルクォート、CRLF 改行がすべて正しく処理されます。
🔍
区切り文字の自動検出
カンマ、タブ、セミコロン、パイプで区切られたデータを貼り付けるだけです。ツールが区切り文字を自動的に識別します。エッジケースでは手動で設定することもできます。
インストール不要、登録不要
ページを開いてデータを貼り付けるだけです。インストールする CLI もなく、プロジェクトに追加するパッケージもなく、作成するアカウントもありません。結果はミリ秒単位で準備されます。

CSV ツールのユースケース

CSV 変換はソフトウェア開発のあらゆる段階で必要になります — API のプロトタイピング、データベースのシーディング、ETL パイプラインのデバッグなど。ここでは、その都度スクリプトを書く場合と比較してブラウザベースのコンバーターが時間を節約できる 6 つの具体的なシナリオを紹介します。

API プロトタイピング
スプレッドシートのエクスポートを JSON 配列に変換して、モック API レスポンスデータとして使用します。フロントエンドチームはバックエンドの準備が整う前にコンポーネントの構築を開始できます。
データベースのシーディング
CSV データダンプを開発用データベースのシーディング用 JSON フィクスチャに変換します。Prisma、Sequelize、TypeORM などの ORM は JSON シードファイルを受け付けます。
データパイプラインのデバッグ
ETL ステップが予期しない CSV を出力した場合、検査のために JSON に変換します。JSON のキーと値の構造により、欠損フィールドや不整合な列を見つけやすくなります。
QA テストマトリクス
スプレッドシートベースのテストケースを JSON 配列に変換して、Jest、pytest、Playwright のパラメータ化テストによるデータ駆動テストに活用できます。
アナリティクスエクスポートの処理
Google Analytics、Mixpanel、Amplitude はデータを CSV としてエクスポートします。JSON に変換することで、JavaScript のチャートライブラリを使用してデータのフィルタリング、集計、可視化が可能になります。
オープンデータの探索
政府のポータルサイトや Kaggle のデータセットは CSV として公開されることが多くあります。JSON に変換することで、フロントエンドダッシュボードやノートブックへのデータ読み込みが容易になります。

CSV 区切り文字リファレンス

CSV ファイルは、作成したソフトウェアやユーザーのロケールによって異なる区切り文字を使用します。以下の表は 4 つの標準的な区切り文字、その一般的なソース、および各区切り文字が登場する場面を一覧にしています。

区切り文字文字一般的なソース備考
カンマ,Excel(US/UK)、Google Sheets、ほとんどのプログラミングライブラリRFC 4180 のデフォルト区切り文字。データにカンマが含まれる場合に問題が生じる(クォートが必要)。
タブ\tデータベースエクスポート、Excel(.txt として保存)、スプレッドシートからのクリップボード貼り付けTSV(Tab-Separated Values)とも呼ばれる。フィールド値内に登場することがほとんどないため、クォートが必要になることはまれ。
セミコロン;Excel(欧州ロケール:DE、FR、IT、ES)、LibreOffice Calc小数点にカンマを使うロケール(1.234,56)で使用される。パーサーがカンマを前提にしている場合、解析エラーの一般的な原因となる。
パイプ|メインフレームエクスポート、銀行・金融データフィード、HL7 医療記録データ値にカンマとセミコロンの両方が含まれる場合に選択される。Web 開発ではまれだが、エンタープライズのデータ交換では標準的。

CSV vs JSON:構造的比較

CSV と JSON はデータを異なる形式で表現します。この違いを理解することで、変換が常に無損失ではない理由と、型推論・ヘッダーマッピング・null 値の処理などの決定が重要な理由が明確になります。

特徴CSVJSON
データモデルフラットなテーブル(行と列)ツリー構造(ネストされたオブジェクトと配列)
型システムなし(すべての値は文字列)文字列、数値、ブーリアン、null、オブジェクト、配列
ネスト非対応任意の深さ
スキーマ暗黙的(RFC 4180 ではヘッダー行は任意)自己記述型(キーがインライン)
コメント標準化されていない(# を使うツールもある)非対応(ECMA-404)
ファイルサイズコンパクト(行ごとにキーを繰り返さない)大きい(すべてのオブジェクトでキーが繰り返される)
ストリーミング行ごと(ストリーミングに自然)行ごとには NDJSON または JSON Streaming が必要

均一な列を持つ表形式データの場合、CSV は行ごとにキーを繰り返さないため、よりスペース効率が高くなります。フィールドが変動するデータ、ネスト構造、型付きの値の場合は JSON の方が適切な選択です。CSV から JSON に変換すると、各オブジェクトがすべてのヘッダー名をプロパティキーとして繰り返すため、出力ファイルは大きくなります。

適切な CSV ツールの選び方

データ変換の方向に合ったツールを選んでください。各ツールはブラウザ内でデータをすべて処理し、区切り文字を自動検出し、RFC 4180 のクォートされたフィールドを処理し、結果をすぐにコピーまたはダウンロードできます — インストール不要。

  1. 1
    必要な操作 CSV ファイルまたはクリップボードのデータをオブジェクトの JSON 配列に変換するCSV→JSON コンバーター
  2. 2
    必要な操作 JSON 配列をスプレッドシートのインポートやデータエクスポート用の CSV 形式に変換するJSON→CSV コンバーター
  3. 3
    必要な操作 ドキュメント、README、または Wiki ページ用の Markdown テーブルを生成するCSV→Markdown 変換
  4. 4
    必要な操作 Web ページに埋め込み可能な thead と tbody 要素を持つ HTML テーブルを生成するCSV→HTML テーブル変換
  5. 5
    必要な操作 CSV ファイルの区切り文字を統一し、空白を除去し、クォートを標準化するCSV フォーマッター
  6. 6
    必要な操作 CSV ファイルから INSERT 文または CREATE TABLE スキーマを生成するCSV→SQL 変換

上記のすべてのツールは区切り文字を自動検出し、RFC 4180 のクォートを処理し、結果をファイルとしてダウンロードできます。ソース CSV に不整合な区切り文字、余分な空白、バランスの崩れたクォートがある場合は、まず CSV フォーマッターを通してください — 変換前に入力を整理することで、不正な出力を防ぎ、後工程でのデバッグ時間を節約できます。JSON と YAML の間の変換を中間ステップとして含むワークフローがある場合は、YAML ツールカテゴリも確認してください。JSON 出力の検証やフォーマットには、JSON フォーマッターと JSON バリデーターが 1 クリックで利用できます。

よくある質問

RFC 4180 とは何ですか?CSV の解析においてなぜ重要なのですか?
RFC 4180 は IETF が公開した CSV フォーマットの正式仕様です。フィールドのクォート規則(カンマ、改行、クォートを含むフィールドをダブルクォートで囲む)、行末記号(CRLF)、ヘッダー行を定義しています。RFC 4180 に従うパーサーはエッジケースを正しく処理します。従わないパーサーは、クォートされたフィールドをサイレントに分割したり、埋め込まれた改行を削除したりする可能性があります。
ライブラリなしで JavaScript で CSV を JSON に変換するには?
テキストを改行で分割し、最初の行をヘッダーとして取り出し、その後の各行をヘッダーをキーとして使用してオブジェクトにマッピングします。本番環境での使用では、このナイーブなアプローチはカンマや改行を含むクォートされたフィールドで破綻します。RFC 4180 のエッジケースを処理する Papa Parse などのライブラリや ToolDeck の CSV→JSON コンバーターを使用してください。
CSV ファイルにネストされたデータを含めることはできますか?
いいえ。CSV はネストをネイティブにサポートしないフラットなフォーマットです。いくつかの回避策があります:ドット記法のヘッダー(address.city)、JSON エンコードされたセル値、または複数の関連する CSV ファイルです。データにネスト構造がある場合は、JSON、YAML、または XML の方が適切なフォーマット選択です。
なぜ Excel はカンマの代わりにセミコロンで CSV をエクスポートするのですか?
欧州のロケールではカンマが小数点記号(1.234,56)として使用されるため、Excel は代わりにセミコロンを CSV の区切り文字として使用します — これはコードがカンマ区切りを前提としている場合の一般的な解析エラーの原因です。具体的な区切り文字は、地域オプションの「Windows のリスト区切り記号」設定によって制御され、小数点記号がカンマの場合はデフォルトでセミコロンになります。つまり、フランス語ロケールの Excel と米国ロケールの Excel からエクスポートされたファイルは、同じ .csv 拡張子を持ちながら異なる区切り文字を持つ可能性があります。出所不明の CSV ファイルを解析する前に、必ず区切り文字を確認または自動検出してください。
CSV ファイルの列数に上限はありますか?
RFC 4180 は列の上限を定義していません。実際の上限は利用するアプリケーションによります。Excel は 16,384 列(2^14)をサポートします。Python、JavaScript、Go のほとんどの CSV パーサーには組み込みの列数制限がありません。ブラウザベースのツールは利用可能なメモリに制限されますが、通常は数千列でも問題なく処理できます。
CSV と TSV の違いは何ですか?
TSV(Tab-Separated Values)はカンマの代わりにタブ文字をフィールドの区切り文字として使用します。TSV ファイルは .tsv 拡張子を持ちます。タブ文字がデータ値内に現れることはほとんどないため、TSV ファイルは CSV よりクォートが少なくて済みます。データベースツール、バイオインフォマティクスソフトウェア、スプレッドシートからのクリップボード貼り付け操作では TSV が生成されることがよくあります。
行の長さが不均一な CSV ファイルはどう処理すればよいですか?
不均一な行の長さ(ragged CSV)は通常、ソースデータのエスケープされていない区切り文字またはクォートの欠落を示しています。ほとんどのパーサーは、短い行を空の値で補完し、長い行をヘッダーの数に合わせて切り詰めることでこれを処理します。不均一さが一貫している場合は、ファイルが予期しない区切り文字を使用しているか、各行に末尾の区切り文字があるかどうかを確認してください。たとえば、セミコロンでエクスポートされたファイルをカンマベースのパーサーで読み込むと、各行に対して単一列の行が生成されます — 予想される 6 つ以上のフィールドの代わりに各レコードが 1 つのフィールドとして表示されます。まず CSV フォーマッターを通すと、この不一致がすぐに明らかになります。
CSV を JSON に変換するとデータ型は保持されますか?
CSV には型システムがありません。すべての値は文字列です。JSON に変換する場合、コンバーターが明示的に型推論を行わない限り、値は文字列のままです。一部のコンバーターは数値の文字列を検出して JSON の数値を出力しますが、これによりデータ損失(郵便番号や電話番号の先頭のゼロ)が生じる可能性があります。ToolDeck のコンバーターはこの問題を避けるため、デフォルトで値を文字列として保持します。