CSVをParseする

今、手がけているサービスで必要なサブのアプリをAIRで開発してます。

そのアプリでCSVをParseする必要があったので、お友達のGoogleに聞いたところ、良いものを見つけました。


SPARK Project - CSVUtils


単純なCSVの解析の場合は問題ないですが、今取り扱っているCSV

・ダブルクォーテーションで囲まれているカンマはスプリッタとみなさない
CSVの1つの項目に改行がはいる場合があり、その場合はダブルクォーテーションで囲まれている

っということを加味する必要があり、かなり厄介です。


文章で書いても分かりにくいので、サンプルCSVファイルを作ってみました。こんな感じです。

code,title,desc,price,comment
"00011",商品名1,"<a href=""hogehoge"">hogehoeg</a>","2,900",コメント
"00011",商品名2,"<a href=""hogehoge2"">
hogehoeg3</a>","3,900",コメント2


CSVUtilsは、こんな厄介なCSVを見事に解析してくれました。
ほんと、感動です。

【追記 3011/8/1】

CSVをパースするクラス(CsvParserクラス)を作成しました。
よろしければ、こちらの記事も参考にして下さい。