umjammer です、 Java は巷では小クラス主義とかいわれており File クラスにコピーメソッドすらありません。 ましてや CSV を扱う標準クラスなどもってのほかみたいです。 しかし、実際の開発には CSV を扱う場面が必ずと言っていいほど出てきます。 # 日本人エクセル大好きだからね CSV を扱う場合 CSV のラインをオブジェクトに、カラムをオブジェクトのフィールドに 設定したい場合がほとんどですので、POJO CSV マッピングを行うことになります。 CLI の記事に書いたように Object Foo マッピングにはアノテーションが有効です。 ということで CSV のアノテーションライブラリを作成しました。 使用方法は JPA に準じています。

@CsvEntity
class Emp {
  @GeneratedValue
  int id
  @CsvColumn
  String name
  @CsvColumn
  int salary
}

な感じで、JPA と全く同じ感覚で CSV のカラムを指定してやります。 そして JPA と組み合わせることによって、

@Entity
@CsvEntity
class Emp {
  @Id
  @GeneratedValue
  int id
  @Column
  @CsvColumn
  String name
  @Column
  @CsvColumn
  int salary
}

for (Emp emp : csvDao.findAll())
  jpaDao.persist(emp);

と、(DI を使うなど)うまく書けばたった2行で CSV からデータベースへ データをロードするプログラムが書けてしまいます。 コードはこちら http://code.google.com/p/klab-commons-csv/ 同様のプログラムとして が存在します。Seaser さんに先超されていました...orz