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

JSFでのCSVダウンロード機能

JSF+CDIでCSVダウンロード機能を実装するときの処理です。 結構、汎用的でいろんなところででてきますね。 Contents1 コード2 参考リンク コード [crayon-5da43c851ea …

no image

JSFのメッセージのレンダリング

ManagedBeanとJSFでメッセージのやり取りをする場合、直接メッセージを変数として持たせるよりは、JSFの仕組みを通じてメッセージを出力させたほうが適切です。 Contents1 エラーメッセ …

no image

JSFのプルダウンに関して(イベントをトリガーにする&非ajax)

いろいろと社内アプリを作っていたせいでかなりプルダウンは慣れたとおもったのですが、未知の部分がさらにあったのでまとめます。 Contents1 初期値に値がないとき2 プルダウン変更時に遷移 初期値に …

no image

persistence.xmlのプロパティについて

JavaEEではデータベースとの設定情報はpersistence.xmlに記述します。 (ユーザー名、パスワード、ポート、driver名、データベース名などの情報はglassfish-resource …

no image

依存ライブラリを含むプログラムのjar化に関して

以前、jar化する場合のpomの記述方法について書いたのですが、一部記述が正しくなかったようです。 mavenでのjarファイル作成 この方法でやってもjarファイルを単独で取り出すとNoClassD …