用于列出TXT文件的单行程序。
import java.io.File;
import java.io.FilenameFilter;
...
files = dir.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".txt");
}
}
);
是否有一行程序可以列出目录中的目录?
4条答案
按热度按时间fkaflof61#
ukqbszuj2#
这使用Commons IO,但实际上是列出所有目录名的最简单方法。它还有一组功能更强大的过滤器,您可以将其用于其他目的:
yeotifhr3#
请注意,此处使用的是
listFiles(FileFilter)
,而不是listFiles(FilenameFilter)
。p4rjhz4m4#
您需要导入java.nio.file.Files和java.nio.file. path,这两个文件从Java 1.7开始就可用。然后使用Java 1.8中引入的流,您可以执行以下操作:
这将获取当前目录“."中的文件,列出它们,并过滤它们,以便只包含目录,然后使用println方法引用迭代目录流以将它们打印出来。
实际上,您也可以使用方法引用作为过滤器,如下所示:
文件列表(路径.get(“.”)).filter(文件::是目录).forEach(系统输出::打印输入);