小编Son*_*nja的帖子

FileFilter for JFileChooser不会过滤文件 - 不是为什么,有代码

我想只选择带有FileChooser的.csv文件,但是当选择器打开时,我会看到所有扩展名.我需要更多地设置更多吗?

        btnFile.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e){
                        chooser = new JFileChooser(); 
                        chooser.setCurrentDirectory(new java.io.File("."));
                        chooser.setDialogTitle("Choose Value File");
                        chooser.addChoosableFileFilter(new CSVFilter());

                        if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION) { 
                          System.out.println("getCurrentDirectory(): " 
                             +  chooser.getCurrentDirectory());
                          System.out.println("getSelectedFile() : " 
                             +  chooser.getSelectedFile());
                          }
                        else {
                          System.out.println("No Selection ");
                          }

            }
        });
Run Code Online (Sandbox Code Playgroud)

和Filter是嵌套类

class CSVFilter extends javax.swing.filechooser.FileFilter {
      public boolean accept(File f) {

        return f.isFile() || f.getName().toLowerCase().endsWith(".csv");
      }

      public String getDescription() {
        return "*.csv";
      }
    }
Run Code Online (Sandbox Code Playgroud)

java swing jfilechooser filefilter

2
推荐指数
1
解决办法
3521
查看次数

标签 统计

filefilter ×1

java ×1

jfilechooser ×1

swing ×1