skillup

技術ブログ

Java

CSVの入出力に関して

投稿日:

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

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

面倒なポイントとしては

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

ですかね。

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

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

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

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

インストール

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

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

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

使い方

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

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

http://badbivouac.blog.fc2.com/blog-entry-5.html

ドキュメントはここですね。

 https://commons.apache.org/proper/commons-csv/archives/1.1/apidocs/index.html

ってかapache commons、様々なライブラリありますね。

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

-Java
-

執筆者:


comment

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

関連記事

no image

GlassFishとTomcatの違い

JavaEEの開発を始めてからは基本的にサーバーとしてGlassFishを使っています。 一般的なJavaのサーバーというとTomcatが有名ではないでしょうか。少なくとも私はTomcatしか知りませ …

no image

mavenのゴール

以前、pomに依存ライブラリを記述しましたが、コンパイルのときのみクラスパスが通っており、実行時にはクラスパスが通っていない、NoClassDefFoundErrorがでたことがありました。 気づいた …

no image

Optionalについて その1

Streamに続いて、Java8で新搭載された機能がOptional です。 Javaではnullの処理をいちいちしなくてはいけないのがいろいろと面倒ですが、Optionalの機能をうまく使うことで可 …

no image

入出力操作

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

no image

依存関係エラー

JavaEEで新PCでビルドしたらいきなりエラー。同一のソースを別PCで動かすと正常に立ち上がります。 こんな場合、GlassFishの設定がおかしいか、ライブラリの依存関係に問題があることがほとんど …