相关疑难解决方法(0)

将File.listFiles与FileNameExtensionFilter一起使用

我想获得一个目录中具有特定扩展名的文件列表.在API(Java 6)中,我看到了一个File.listFiles(FileFilter)可以执行此操作的方法.

由于我需要特定的扩展,我创建了一个FileNameExtensionFilter.但是当我使用listFiles它时出现编译错误.我认为,因为FileNameExtensionFilter implements FileFilter,我应该能够做到这一点.代码如下:

FileNameExtensionFilter filter = new FileNameExtensionFilter("text only","txt");
String dir  = "/users/blah/dirname";
File f[] = (new File(dir)).listFiles(filter);
Run Code Online (Sandbox Code Playgroud)

最后一行显示编译错误:

类型File中的方法listFiles(FileNameFilter)不适用于FileNameExtensionFilter类型的参数

我试图使用listFiles(FileFilter),而不是listFiles(FileNameFilter).为什么编译器不能识别这个?

如果我编写自己的扩展过滤器扩展,这是有效的FileFilter.我宁愿使用而FileNameExtensionFilter不是写我自己的.我究竟做错了什么?

java file filter java-6

75
推荐指数
3
解决办法
17万
查看次数

标签 统计

file ×1

filter ×1

java ×1

java-6 ×1