如何使用Java的目录流仅在目录而不是其他子目录中获取文件/子目录

时间:2015-10-18 05:18:27

标签: java file path directorystream

我使用Java的DirectoryStream来获取目录中所有文件/子文件夹的列表。但是,在遍历目录的所有文件和文件夹之后,我的代码将继续遍历所有子目录。如何阻止它通过我的子目录?

    try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir)) {
        for (Path entry : stream) {
            list.add(entry.getFileName().toString());
            System.out.println(entry.getFileName());
        }
    } catch (IOException e) {
        System.out.println(e.getMessage());
    }

1 个答案:

答案 0 :(得分:1)

尝试:

       for (Path entry : stream) {
            System.out.println(entry.getFileName() + " | " + entry.toFile().isDirectory());
            if (!entry.toFile().isDirectory()) {
                list.add(entry.getFileName().toString());
            }
        }