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

Search a file in a directory using wildcards

我需要使用 Java 检查目录中是否存在某些文件,但文件名有一个模式。例如文件名是recap_data_03082017.txt,最后的数字总是在变化。有没有一种方法可以使用像 recap_data_*.csv

这样的通配符来执行搜索

如果您使用的是 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();
        }