カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

FilenameFilter

この記事は最終更新日から1年以上経過しています。

ファイル名に正規表現でフィルターをかけます

FilenameFilter fFilter = new FilenameFilter() {
    @Override
    public boolean accept(File dir, String filename) {
        return filename.matches(".+.jpg"); //正規表現で検索
    }
};

フォルダーも含むようにフィルターをかける場合

FilenameFilter fFilter = new FilenameFilter() {
    @Override
    public boolean accept(File dir, String filename) {
        boolean f;
        if(new File(dir + "/" + filename).isDirectory()) {
            f = true;
        } else if (filename.matches(".+.jpg")) { //正規表現で検索
            f = true;
        } else {
            f = false;
        }
        return f;
    }
};

実行例

try {
    File[] files = new File("パス").listFiles(fFilter);

    ArrayList<String> pathList = new ArrayList<String>();
    for (File file : files) {
        pathList.add(file.getName());
}
この記事がお役に立ちましたらシェアお願いします
5,060 views

コメントを残す

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