仕様と根拠
読み方
RFC 4180 の 2 節に沿って読みます。区切り文字で値を分け、二重引用符で囲んだ値の中の区切り文字・改行・二重引用符("" と 2 つ重ねたもの)は値の一部として扱います。行の区切りは CRLF・LF・CR のどれでも読み、行番号は元のテキストの何行目かで示します(引用符の中の改行で 1 つの値が複数行にまたがる場合は、始まりの行)。
エラー・警告にする条件
値の数が見出しの行(見出しがない場合は最も多い値の数)と違う行と、最後まで閉じていない引用符はエラーです。空欄のある列、すべて空欄の列、すべての値が同じ重複行、見出しの重複・空の見出し、空の行、引用符の使い方の誤り、改行の種類の混在は警告にします。
集計表の見方
列ごとに見出し、値のある行の数、空欄の数、空欄のある行番号(先頭 5 件)を表にします。空白だけの値も空欄として数えます。列数が足りない行の欠けた部分は空欄に数えず、エラーとして別に示します。
根拠にした仕様・資料
| 仕様・資料 | 確認日 | 使った箇所 |
|---|---|---|
| RFC 4180 Common Format and MIME Type for Comma-Separated Values (CSV) Files | 2026年10月28日 | 2 節の 1〜7(CRLF の行区切り・見出しの行・各行の値の数・二重引用符の囲みと "" のエスケープ) |
指摘の段階
- エラー: 仕様に反していて、正しく読めない・処理できない入力です。
- 警告: 読めるものの、仕様の推奨に反する・矛盾する・意図と違う結果になりやすい入力です。
- 情報: 誤りではありませんが、知っておくとよい扱い(読み飛ばした部分や解釈)です。
入力の扱い(送信しない仕組み)
処理はすべてお使いのブラウザの中で行います。処理の本体はこのサイトから配信する小さなスクリプト(/app.js)で、外部のサービスやライブラリを読み込みません。ページはブラウザに通信を禁止させる設定(Content-Security-Policy の connect-src)つきで配信しており、入力した内容がサーバーや第三者へ送られることはありません。ファイルを選んだ場合も、端末の中で読み込むだけです。
このツールでできないこと(制約)
- 値の意味(日付・金額・メールアドレスなどの形式として正しいか)は判定しません。列の揃いと空欄・重複だけを見ます。
- ファイルは UTF-8 として読みます。Shift_JIS の CSV は文字化けするため、表計算ソフトで UTF-8 として保存し直してから使います。
- 重複行はすべての値が完全に同じ行だけを数えます。前後の空白や大文字・小文字の違いは別の行として扱います。
- 区切り文字の自動判定は 1 行目だけを見ます。1 行目に区切り文字が少ない場合は区切り文字を指定してください。
ご利用にあたって
- 検査は RFC 4180 の一般的な読み方にもとづきます。取り込み先のシステムが独自の規則(列の順序・必須項目)を持つ場合は、その仕様も確認してください。
- 大きなファイルはお使いの端末の性能によって処理に時間がかかることがあります。