がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

CSVの話

某所で色々と出ていたようなのですが。とりあえず個人的には「状態遷移で組もうよ〜」とか思ってしまうです。
で…CSVって、RFC出てたんですねぇ。知らなんだ。4180番でございます。日本語は http://www.kasai.fm/wiki/rfc4180jp からご覧いただけるようです。
CategoryがInformationalなのが微妙ではあるのですが、少なくとも「Excelで準拠っぽくなってますなんとなく」よりは「RFC4180に準拠してます」っていうほうがイメージがよろしいです(笑
で。ざっくりと読んだのですが。
以前Excel叩いて「こんな感じかなぁ」って思ってた一通りが概ね一致してたのでよし。
まず面白いのがここ。

There maybe an optional header line appearing as the first line
of the file with the same format as normal record lines. This
header will contain names corresponding to the fields in the file
and should contain the same number of fields as the records in
the rest of the file (the presence or absence of the header line
should be indicated via the optional "header" parameter of this
MIME type).

ファイルの先頭には、オプションとして、通常行と同一の書式を持つ、ヘッダ行が存在してもよい。このヘッダは、ファイル中の各フィールドの名称を保持し、ファイルの残りの部分にある各レコードが持っているのと、同じ数のフィールドを持つべきである。ヘッダ行の有無は、このMIMEタイプのオプションパラメータ"header"で明示するべきである。

いいなぁheader要素かぁ。欲しかったので嬉しい感じです。
あと、微妙っちゃぁ微妙なのが、まず

Each line should contain the same number of fields throughout the file.

各行が保持するフィールドの数は、ファイル全体を通じ、同一であるべきである。

ここ。いやまぁ楽になっていいんだけど…可変長、たしかどこかの業務であったようななかったような…。
あとは

The last field in the record must not be followed by a comma.

最後のフィールドは、コンマで終わってはならない。

某所でも出ていたのですが。「空文字」の扱い次第では大変かなぁと。


でもまぁ、何はともあれ、CSVの標準化が動き始めてるのは良いことです。