arcanum_jp’s blog

おっさんの日記

CSVライブラリ Orange Signal

 皆さんは、JavaCSVを扱うときに苦労した経験はないでしょうか。

 CSV(Comma-Separated Values/Character-Separated Values)はデータをカンマ(,)やタブなどで区切って並べたテキスト形式のデータで、表計算ソフトやデータベースなどとのデータ交換のしやすさや可読性のよさなどから、古くから広く使われているデータ形式です。

 このCSVデータ形式には、さまざまな「方言」があり、データの中にカンマ(,)が入っている場合や、データをダブルクォーテーション(")で囲む場合、データの中にダブルクォーテーションがありそれがエスケープされている場合、データの中に改行がある場合などが存在します。また、CSVのデータ構成にもさまざまな種類があり、データの先頭行をヘッダとする場合や、コメント行や集計行がある場合、日時データを日付と時刻それぞれ別々の列とする場合など、CSVの読み書きは実はとっても面倒で悩ましいものです。

 本記事では、さまざまなCSV方言やCSVデータ構成に対応している「OrangeSignal CSV」の特徴と機能を紹介します。

JavaでCSVの読み書きを快適に! ~「OrangeSignal CSV」概要 (1/3):CodeZine(コードジン)