gpt4 book ai didi

Java NIO2 - 返回递归集合

转载 作者:行者123 更新时间:2023-11-30 04:54:00 25 4
gpt4 key购买 nike

我正在研究 Java7 中的新功能。我想获取给定特定输入目录返回的 Collection 对象。

目前我正在使用(org.apache.commons.io)

Collection<File> files = FileUtils.listFiles(myInputFile, ...);

相反,我想做一些类似的事情:

Collection<Path> paths = listPathsUsingJava7(myInputPath, ...);

但是,我在示例/文档中没有看到任何关于执行此操作的具体信息。我看到 DirectoryStreams,它似乎没有进行递归。我还看到访问者让您对当前对象执行操作,而不是将其添加到集合中。

有人有一个以正确方式执行此操作的 Java7 示例吗?

谢谢!

最佳答案

接下来的 JDK7 代码会将文件夹和子文件夹中的所有文件添加到 files 中。

    final List<Path> files = new ArrayList<>();
Files.walkFileTree(Paths.get(myInputPath), new SimpleFileVisitor<Path>() {

@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
files.add(file);
return FileVisitResult.CONTINUE;
}
});

关于Java NIO2 - 返回递归集合<Path>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9161768/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com