Tool overview
CSV ビューアとは?
CSV ビューアは、ソート可能なテーブルで CSV ファイルをプレビュー・探索ための開発者向けツールです。
なぜCSV ビューアを使うのか?
ソート可能なテーブルで CSV ファイルをプレビュー・探索際の可読性と作業速度を向上させ、データをサーバーに送信しません。
主な機能
クライアントサイドのプライバシー、即座の結果、ワンクリックコピー。ソート可能なテーブルで CSV ファイルをプレビュー・探索
使い方
上のツールで正確な結果を得るための手順です。
- Open a CSV file from disk—parsing stays on-device.
- Sort columnsとscan row counts in the table header.
- Use for quick inspection before JSON/ETL transforms.
CSV Viewer Features
このユーティリティの有効な例、よくある無効入力、頻出エラーを確認できます。
CSV Viewer ガイド — ここから始める
このページは DevUtilities の CSV Viewer で CSV をプレビューする正規ガイドです。上でファイルを開き、区切り文字/ヘッダー、並べ替え、大きなファイルの制限、エンコーディング、JSON/CSV への引き渡しの各節を使ってください。解析はブラウザ内で完結します。
CSV Viewer の役割
CSV Viewer はカンマ区切り値のクライアント側テーブルプレビューです。先頭行をヘッダーとして解析し、並べ替え可能なグリッドを描画し、ETL・JSON 変換・チケット添付の前にエクスポートを検査できるよう全文をメモリに保持します。
得られるもの
- FileReader(テキスト)によるファイル選択 / ドラッグ&ドロップ
- RFC 4180 風の解析: カンマ、引用フィールド、エスケープされた引用符
- 先頭行を列ヘッダーとして扱う
- クリック可能なヘッダー並べ替え(localeCompare、昇順/降順)
- テーブル UI の行数・列数
- ローカルのみ — スプレッドシート内容はアップロードされない
このビューアを使う場面
- Excel を開かずにエクスポートを素早く確認したい
- JSON/CSV 変換の前にヘッダーと行の形を検証したい
- 引用符とカンマがエクスポートを生き延びたか確認したい
- 顧客や給与の CSV をオフラインで扱いたい
手順のウォークスルー
このツールによる解決方法
- .csv をディスクから開く。
- ヘッダー名がプロデューサーのスキーマと一致するか確認する。
- 行数を想定エクスポートサイズと照合する。
- 列ヘッダーをクリックして並べ替え、再クリックで反転。
- 不揃いな行や結合っぽい値を走査する。
- 文字がおかしい(é、’)場合はソースでエンコーディングを直し再読み込み。
- 変換には CSV を JSON ↔ CSV、Dev Toolkit Columns → JSON、または ETL にコピー。
区切り文字とヘッダー検出
パーサーはカンマ区切りです。最初の空でない論理行がヘッダーになり、以降の各行は列インデックスで揃ったデータ行です。
検出されるもの
- フィールド区切りとしてのカンマ (,)
- カンマや改行を含み得る二重引用フィールド
- 引用フィールド内の二重引用としてのエスケープ ("")
- CRLF と LF の行終端
自動検出されないもの
- EU Excel エクスポートでよくあるセミコロン (;) やタブ (\t) 区切り
- 「ヘッダーあり」トグル — 行 0 は常にヘッダー
- 型推論(数値/日付はグリッド上で文字列のまま)
実践的なヒント
実践的なヒント
並べ替えとテーブルプレビュー
並べ替えはセル文字列に対する localeCompare による辞書順です。カテゴリや ID の走査に向き、数値の大小順には向きません。
- ヘッダーをクリックで昇順、再クリックで降順
- 数値列はテキストとして並ぶ(「10」が「2」より前)
- 空セルは空文字; 不揃いな行は値が視覚的にずれることがある
- 新しいファイルを読み込むと並べ替え状態はリセット
- 行 × 列のメタ行でエクスポートの完全性を確認
ユースケース: スプレッドシート出力の QA
ベンダーが overnight.csv を送りました。ウェアハウスジョブに載せる前に、ヘッダー・行数・引用されたカンマがフィールドを分割していないことを確認する必要があります。
このツールによる解決方法
- ファイルを開き、契約スキーマに対してヘッダー行を読み上げる。
- 表示行数をベンダーのマニフェストと比較する。
- キー列(order_id、email)を並べ替え、空白や重複を目視する。
- 怪しい行のセルを開く — 引用された住所は1列に収まるべき。
- 形が間違っていれば ETL 前に拒否または再依頼する。
結果: パイプライン失敗の後ではなく、プレビュー時点で問題を捕捉できます。
ユースケース: JSON ツールへの引き渡し
API モックや LLM ツールスキーマ用のオブジェクトが必要ですが、信頼できる情報源はまだ CSV エクスポートです。
このツールによる解決方法
- CSV Viewer でヘッダーがきれい(空白名なし、重複タイトルなし)か確認する。
- CSV テキストを Dev Toolkit → Columns → JSON にコピーしてオブジェクト配列にするか、JSON ↔ CSV で往復する。
- モック配線前に JSON Formatter でサンプルオブジェクトを検証する。
- CSV を監査成果物として残し、サニタイズしたサンプルだけコミットする。
結果: パイプライン失敗の後ではなく、プレビュー時点で問題を捕捉できます。
ユースケース: エンコーディング問題の検出
名前が José と出たり、スマートクォートが ’ と出たりします。関係者はデータが壊れていると考えます。
このツールによる解決方法
- ファイルを読み込む — FileReader はブラウザの既定テキスト復号(通常 UTF-8)を使う。
- 文字化けが出る場合、ファイルは UTF-8 と誤ラベルされた Windows-1252/Latin-1(またはその逆)の可能性が高い。
- Excel/Sheets から CSV UTF-8 で再エクスポートするか、適切なエンコーディングツールで変換する。
- 再読み込みし、ダイアクリティカルと通貨記号が正しく表示されるか確認する。
結果: パイプライン失敗の後ではなく、プレビュー時点で問題を捕捉できます。
大きなファイルの注意点
ファイル全体が文字列として保持され、メモリ上の完全なテーブルに解析されます。上限はストリーミングエンジンではなく、タブのメモリです。
- 数百 MB の CSV はタブをフリーズ/クラッシュさせうる — 分割するか先頭サンプルを先に
- 並べ替えは行配列をコピー; 幅広+高テーブルはメモリを増やす
- 百万行向けの仮想無限スクロールはない — DB や CLI(csvkit、DuckDB)を使う
- スポットチェックではソースから先頭 1–5k 行をエクスポート
修正: 不揃いな行やずれた列
症状: 一部の行のセルが少ない、値が誤ったヘッダーの下に出る、カンマを含むフィールドが余分な列に分割される。
原因
フィールド内の未引用カンマ、不一致の引用符、エクスポート途中で切れた行が列整列を壊します。セミコロン区切りをカンマとして解析すると1列に潰れます。
診断
最初の悪い行を見つける。住所/名前に引用なしのカンマがあるか確認。ファイルがセミコロンではなくカンマを使うか確認。
修正
- 適切な引用で再エクスポート(Excel: CSV UTF-8; DB: FORCE QUOTE)。
- 開く前にセミコロン/TSV をカンマ区切りに変換。
- 問題行の不均衡な引用符を修正。
- 再読み込みし、サンプル行の列数がヘッダー長と一致するか確認。
修正: 文字化けとエンコーディング
症状: アクセント、記号、CJK テキストがラテン文字のゴミ(Ã、Â、â€)として表示される。
原因
バイトが誤った文字セットで復号されました。このビューアはブラウザ経由でテキストとして読みます(現代 CSV では UTF-8 を想定)。
診断
エンコーディングを表示するエディタで同じファイルを開く。Windows-1252 では正しくここでは誤るなら UTF-8 に変換。
修正
- スプレッドシートや BI ツールから CSV UTF-8 として再保存。
- iconv や専用コンバータで変換してから再読み込み。
- プロデューサーがパイプラインで UTF-8 を宣言するよう確保(特にレガシー ERP)。
エンコーディングはソースで直す — 並べ替えと JSON 引き渡しは破損を伝播するだけです。
セキュリティチェックリスト
CSV エクスポートにはしばしば PII、給与、顧客リストが含まれます。
- 未知の「CSV オンライン」サイトよりローカルプレビューを優先
- グリッドのスクリーンショット共有前にメール/ID を除去またはハッシュ
- 本番 CSV を公開リポジトリにコミットしない
- 後でスプレッドシートに貼る場合の数式インジェクション(=, +, -)に注意
よくある質問
一般的なトラブルとデータプライバシーに関する回答です。
公式ドキュメントと参照
このユーティリティの公式仕様とプラットフォーム文書です。