使用通配符搜索目录中的文件

时间:2017-08-03 12:59:10

标签: java file-search

我需要检查使用Java的目录中是否存在某些文件,但文件名是否有模式。例如,文件名是recap_data_03082017.txt,末尾的数字总是在变化。有没有办法使用通配符来执行搜索,如recap_data _ * .csv

1 个答案:

答案 0 :(得分:0)

如果您使用的是Java 8,则可以尝试以下方法,

 try (Stream<Path> paths = Files.walk(Paths.get("/your/path/"), 1)) {
            return paths
                    .filter(Files::isRegularFile)
                    .anyMatch(f -> {
                        final String fileName = f.getFileName().toString();
                        return fileName.startsWith("ecap_data_") && fileName.endsWith(".csv");
                    });
        } catch (IOException e) {
            e.printStackTrace();
        }