![](/img/trans.png)
[英]One-liner to make read-only list of N copies of a reference in Java
[英]Java: one-liner to list Dirs in a directory?
One-Liner列出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");
}
}
);
是否有一个单行列表在目录中列出dirs?
public static void main (String[] args) throws Exception {
File dir = new File("yourDir");
FileFilter fileFilter = new FileFilter() {
public boolean accept(File file) {
return file.isDirectory();
}
};
File[] files = dir.listFiles(fileFilter);
for (File f : files)
System.out.println( f.getName() );
}
这使用Commons IO,但实际上是列出所有目录名称的最简单方法。 它还有一套更强大的过滤器,可用于其他目的:
String[] dirNames = new File("/Users/jonathan").list(DirectoryFileFilter.INSTANCE);
for (String dirName: dirNames)
System.out.println("Directory Name: " + dirName);
import java.io.File;
import java.io.FileFilter;
...
files = dir.listFiles(new FileFilter() {
public boolean accept(File pathname) {
return pathname.isDirectory();
}
});
看看这个代码,
import java.io.File;
import java.io.FilenameFilter;
public class FileNameFilter
{
public static void main(String[] args)
{
File fl = new File("yourDir");
// here we are retrieving only .txt files
FilenameFilter fnf = new FilenameFilter()
{
@Override
public boolean accept(File dir, String name)
{
if(name.endsWith(".txt"))
{
return true;
}
else
{
return false;
}
}
};
// passing "fnf" object to listFiles() method to retrieve only html files
File[] files = fl.listFiles(fnf);
for(File file : files)
{
System.out.println(file.getName());
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.