是否有解决方法:FileFilter在Windows中不起作用?

时间:2017-07-31 18:02:33

标签: java jfilechooser filefilter

以下JFileChooser代码工作正常,但FileFilter不会过滤。它没有做任何事情。来自另一个stackoverflow的回答:“文件名过滤器在Sun的Microsoft Windows参考实现中不起作用。” Comment from Nov 21st, 2016

是否有适用于Windows的FileFilter解决方法?

public String getPathFileName(String startingDir) {
   String returnSelectedFile = "";
   JFileChooser fileChooser = new JFileChooser(startingDir);
   FileFilter filter = new FileNameExtensionFilter("Excel file", "xls", "xlsx");
   fileChooser.addChoosableFileFilter(filter);
   int returnValue = fileChooser.showOpenDialog(null);
   if (returnValue == JFileChooser.APPROVE_OPTION) {
       File selectedFile = fileChooser.getSelectedFile();
       returnSelectedFile = selectedFile.getPath();
   }
   return returnSelectedFile;
}

1 个答案:

答案 0 :(得分:0)

我发现这个有用:

final JFileChooser chooser = new JFileChooser(); chooser.setFileFilter(new FileNameExtensionFilter("CSV FILES", "csv"));

我发现这适用于一个文件过滤器,但我无法确认多个文件过滤器。希望这会有所帮助。