stream = Files.newDirectoryStream(dir, entry -> imageFileMatcher.matches(entry.getFileName()))) { for (Path path : stream) { System.out.println(path.getFileName()); } } }"> stream = Files.newDirectoryStream(dir, entry -> imageFileMatcher.matches(entry.getFileName()))) { for (Path path : stream) { System.out.println(path.getFileName()); } } }"> stream = Files.newDirectoryStream(dir, entry -> imageFileMatcher.matches(entry.getFileName()))) { for (Path path : stream) { System.out.println(path.getFileName()); } } }">
public void iterateAndFilter() throws IOException {
        Path dir = Paths.get("C:/foo/bar");
        PathMatcher imageFileMatcher =
            FileSystems.getDefault().getPathMatcher(
                "regex:.*(?i:jpg|jpeg|png|gif|bmp|jpe|jfif)");

        try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir,
                entry -> imageFileMatcher.matches(entry.getFileName()))) {

            for (Path path : stream) {
                System.out.println(path.getFileName());
            }
        }
    }