【问题标题】:listFiles(FileFilter) instead of listFiles(FileNameFilter)listFiles(FileFilter) 而不是 listFiles(FileNameFilter)
【发布时间】:2013-10-11 13:49:50
【问题描述】:

当我尝试使用 someFile.listFiles(FileFilter foobar) 方法时,我得到了错误

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

虽然 File 的 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);

【问题讨论】:

  • 您的导入指令在哪里。您是否不小心导入了错误的 FilteFilter 而不是 import java.io.FileFilter

标签: java io filefilter


【解决方案1】:

看起来你已经导入了

javax.swing.filechooser.FileFilter

而不是

java.io.FileFilter

可能在从 IDE 中选择导入时发生

如果使用正确的导入,由于存在getDescription 方法,即only found in the former,代码不应编译。该描述用于在JFileChooser 对话框中显示,不适用于此处。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    • 2011-02-04
    • 2016-03-13
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 2016-03-16
    相关资源
    最近更新 更多