CSV ファイルとは?

CSV — テキスト形式の表

どんな形式か

CSVは表を極限までそぎ落としたような形式で、1行に1件のレコード、値はカンマで区切られる。それ以外の要素は一切ない。色分けも数式も、複数シートもない。

この簡素さこそが強みだ。どんなソフトウェアも、どんなプログラミング言語も、どんなデータベースもCSVを読み込める。いわばデータの共通語である。

歴史と由来

この形式は1970年代からすでに使われていたが、公式な文書として仕様がまとめられたのは2005年になってからのことで、しかも拘束力のある標準化団体によるものではなかった。

こうした厳密な規格が存在しなかったことが、CSVにまつわる数々のトラブルの原因になっている。実装は作り手ごとにばらばらだったのだ。

便利な理由

汎用性が高く、ファイルサイズも小さい。テキストとしてそのまま読め、スクリプトを使えば数百万行でも数秒で処理できる。

どんな表計算ソフトにも、どんなデータベースにもそのまま取り込める。

限界と欠点

区切り文字が厄介な問題を生む。フランスの表計算ソフトはセミコロンを区切りに使うが、これはカンマがすでに小数点として使われているためだ。そのため、英語圏で作られたCSVをフランス語版のExcelで開くと、すべてのデータが1列に押し込まれてしまう。

これに文字コードの問題——アクセント記号が文字化けする——や、値自体にカンマが含まれるケースが加わると、世界中で起きているデータ取り込みトラブルの大半がここに集約される。

使い方のヒント

変換した後は必ず3点を確認したい。区切り文字、文字コード(UTF-8を推奨)、そして区切り文字を含む値を囲む引用符の有無だ。

数式や書式を保持したいならXLSXへの変換が向いている。階層構造を持つデータについては、CSVは構造上不向きなので、JSONを使うべきだ。

フランスにある安全なサーバーで、CSV を数秒で変換できます。

CSV を変換する