FileUtilsメモ

Jakarta Commons IOにあるFileUtilsのメモ。
ちょっと使ったので。

フォルダ配下のファイル一覧取得


FileUtils.listFiles(new File("C:/tmp"), new String[]{"java"}, true);
引数2つめは、拡張子の指定。指定したくない場合はnullでOK。
引数の3つめは、再帰的に探すかどうか。
# 昔、再帰ガリガリ実装したのが馬鹿みたいだ。。。
# 勉強にはなるけど。

ファイルへの書き込み


List list = ・・・
FileUtils.writeLines(new File("test.txt"), "Windows-31J", list);
ストリームのcloseとかやんなくて良い分、かなりラク
ちょっとしたプログラムなんかに使えそう。

ディレクトリの削除


File file = new File("test/test");
FileUtils.deleteDirectory(file);
JDKのはディレクトリが空じゃないとNGだけど、こっちはOK。

ファイルのコピーと内容のチェック


File source = new File("a.txt");
File dist = new File("b.txt");
FileUtils.copyFile(source, dist);
boolean b = FileUtils.contentEquals(source, dist);
ファイルのコピーもメソッド一発。内容比較も同様。
上記のcontentEqualsの結果は、もちろんtrue。