2011年6月16日木曜日

Javaでフォルダ内のファイル一覧をフィルタリングする

久しぶりにJavaの話題でもします。

Fileクラスでフォルダ内のファイル一覧が取得できますが、
そこにファイル名や拡張子でフィルタリングをしたいときがあります。

if文を使っている方…もっと良い方法があります。
FilenameFilterを使う方がスマートです。
使い方はJavadocでも読んでください。

まあインターフェースを継承して実装する必要があるので、
普通はApache Commons IOのファイルフィルタを使うでしょう。

では一から実装する場合はどうするのがスマートなのか?
ひとつの解答がこちらです。


つまり正規表現で何とかするわけです。
ファイル名でのフィルタリングなら、
ほぼこれひとつでどうとでもなることでしょう。

正規表現の書き方?
Javadocを…というかまずはそれを読め!

追記:ああ、Apache Commons IOにも正規表現フィルタはあるんで、
興味本位以外ではそっちを使ってくださいね。

0 件のコメント:

コメントを投稿