備忘録‎ > ‎

[csv]CSVの仕様

2014/09/29 22:42 に ly copins が投稿
comma separeted value

古くから使われているデータ形式。
値をカンマと改行で、行と列の区切る。
シンプルなので実装しやすい一方で、ソフトによって微妙に解釈が違っていることも。

新たにcsv対応するのであれば、RFC4180という規約に従うと良い。

基本ルール
  • 各レコードの区切りは改行(CR+LF)。ただし、データの最後のレコードは無くても良い。
  • ファイルの先頭の行にヘッダー情報があっても良い。(ヘッダー情報がある時はMIMEタイプで明示するべき)
  • ヘッダーと各レコードは、カンマで区切られた1つ以上のフィールドを持つ。フィールド数はファイル内で同一であるべき。
    • 空白はフィールドの一部としてみなす。勝手にトリムしたりしてはいけない。
    • 最後のフィールドはカンマで終わってはいけない。
  • 各フィールドはダブルコーテーションで囲っても、囲わなくてもどちらでも良い。ただし、囲まない場合はフィールドにダブルコーテーションを含んではいけない。
  • 改行(CR+LF)やカンマ、ダブルコーテーションを含むフィールドは、ダブルコーテーションで囲む。
    • フィールド内のダブルコーテーションは、ダブルコーテーションを2つ連続で記述することで表現する。


Comments