skillup

技術ブログ

Java

CSVの入出力に関して

投稿日:2015年7月10日 更新日:

業務でCSVの入出力と格闘中。

まあよくある頻出の作業だったりするんですが、自前でやるとなかなか面倒です。

面倒なポイントとしては

  • クオートのエスケープ
  • カンマのエスケープ
  • ヘッダーとの結合

ですかね。

前職でもそうだったんですけど、こういう細かい作業を自前でやると上記のようなところで頻繁にバグが出ます。なので自力でやるのはできれば避けたいところ・・・

まあ一定のスキルを身につけるまでの最初のスキルアップの段階では無駄にはならないと思いますが。

社長に相談するとJavaで有名なライブラリ(Apache commons)があるということでさっそく探して使ってみることに。

探してみるとApache Commons CSVというライブラリがあり、歴史もあってなかなかよさげなのでこれを使ってみることにしました。

インストール

インストールは例によってmavenで行います。

いやー別のメンバーとも共有できますし、ほんと便利ですね・・・

もうなしでは作業できないかもです。

使い方

InputStreamを引数にとり、そのあとは各種設定をして、parseするとList形式でデータが取れます。

ちなみに参考にしたのは↓ここ

Commons CSVの使い方(読み込み)

PerlのCPANやPHPのPearに近いかんじのようなので積極的にどんどんと組み込んでいこうと思います。

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

入出力操作

Javaの出力処理について書きます。 下記リンクが非常に詳しかったので、これをもとにまとめてみたんですが、咀嚼できてないっぽい・・・・ もう1~2度修正がひつようかも。 Contents1 Javaの …

no image

例外処理について その2

以前、「例外処理について」で例外処理について記述をしたんですが、漠然としていたのともう1回まとめなおしたかったため、メモしておきます。 Contents1 例外とは?2 例外のクラス分け2.1 Thr …

no image

設定ファイルの置き場所

一般的にレベルの高いソースとは保守性が高いものを指します。特にWEB系ですと仕様変更がしょっちゅうなので変更があったときにいかに少ない工数で対応できるかが大切です。 保守性をあげる工夫はいろいろありま …

no image

Listの簡便な書き方

このエントリーともかぶりますが、リストにクラスを代入するときの簡便な書き方の紹介です。 名前と年齢のプロパティをもつ簡単なクラス(Hoge)をListに格納しようとします。 普通に書くと [crayo …

no image

列挙型Enumについて

列挙型のクラスであるEnumについてのメモです。 ちなみにEnumの読み方はイナムまたはイニュームだそうです。 Contents1 列挙型とは?1.1 基本の使い方1.2 key=value的な使い方 …