2013-10-11 31 views
0

当我尝试使用方法someFile.listFiles(FileFilter foobar)我得到的错误listFiles(FileFilter类),而不是listFiles(的FilenameFilter)

在类型文件的方法listFiles(的FilenameFilter)不适用于参数(的FileFilter)

虽然文件的javadoc中明确包含:public File[] listFiles(FileFilter filter)http://docs.oracle.com/javase/7/docs/api/java/io/File.html

如何解决这个问题?

PS:我的代码是:

FileFilter folderFilter = new FileFilter() { 
     public boolean accept(File file) { 
      return file.isDirectory(); 
     } 
     @Override 
     public String getDescription() { 
      return "some filter"; 
     } 
    }; 
    File[] foobars = someFile.listFiles(folderFilter); 
+0

您的进口指令在哪里?你意外地导入了错误的FilteFilter而不是'import java.io.FileFilter'? – Alcanzar

回答

4

看起来已经导入的

java.io.FileFilter 

javax.swing.filechooser.FileFilter 

而不是从IDE选择导入时可能发生

如果正确的imp ort被使用时,代码不应该编译,因为getDescription方法的存在是only found in the former。该描述用于JFileChooser对话框的显示目的,并不适用于此处。

相关问题