Still using CSV? Use XLSX! / 脱 CSV のススメ
- 2. CSV やめませんか?
• Excel で読み書きしやすくない
– ロケールによって区切り文字が違う
– ユニコードを扱えない
– 型が勝手に変わる
– 書式設定できない(日付のフォーマット等)
• 大きい
– 圧縮しやすいはずなのに
• 標準化されていない
– RFC はあるけれど、Excel 様に従うしかない
- 3. CSV のよくある風景
$ cat hoge.csv
abc,123,+33,+81-1,=222+4,33-2,2012-05-22 13:22:33
右寄せ +がない 勝手に計算 2月33日?! 秒が省略
- 4. XLSX なら
• ユニコードを扱える
• 数値や日付の型を扱える
• 書式も設定できる
• ZIPファイルなのでサイズが小さい
• 一応標準化されている
• Excel との親和性もばっちり!
• ZIPの中身は XML で直接編集も可能
- 6. Python で扱うなら
• openpyxl がお勧め
– http://packages.python.org/openpyxl/
– 文字列、数値、日付等は自動的に Python の型
と相互変換
• 読み書きをストリームで扱うモードがあ
るので、巨大なログも読み書き出せます
– あまり大きいと Excel で開けないけど
– ストリームモードだと書式設定ができないよ
うに見えるけど、ウニャればできます