Следующий код JFileChooser работает нормально, за исключением того, что FileFilter не фильтрует. Это ничего не делает. Из другого ответа stackoverflow: «Фильтры имен файлов не работают в эталонной реализации Sun для Microsoft Windows». Комментарий от 21 ноября 2016 г.
Есть ли обходной путь FileFilter для Windows?
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;
}