Java - setFileFilter问题

时间:2012-03-27 20:02:51

标签: java swing jfilechooser

我正在JFileChooser上构建一个JFileFilter,但是在我有代码setFileFilter并且我的IDE提供信息的情况下会发生错误'JFileChooser类型中的方法setFileFilter(FileFilter)不适用于参数(new FileFilter(){})'。不过我确信我之前已经用这种格式完成了它并且一切都很好。任何人都可以帮我找到并理解为什么这不起作用?谢谢!

JFileChooser chooser = new JFileChooser();
        chooser.setDialogTitle("Open File");
        chooser.setFileFilter(new FileFilter(){

            @Override
            public boolean accept(File f) {
                String fName = f.getName().toUpperCase();
                if (fName.endsWith(".TXT") || f.isDirectory()) {
                    return true;
                } else {
                    return false;   
                }
            }

            public String getDescription() {
                return "Text File (*.txt)";
            }

        });

1 个答案:

答案 0 :(得分:8)

这不是JFileFilter,它只是FileFilter

问题是J2SE中有两个FileFilter类/接口。一个在java.io中使用...我很确定它在File中。另一个是JFileChooser。你可能导入了错误的。

顺便说一下,有一个扩展名filenameFilter或类似的东西可能会做你想要的一切。在文档中找到正确的类并查找其子类