setSelectedFile ne fonctionne pas avec les répertoires mentionnés ci-dessus, une solution est
try {
FileChooserUI fcUi = fileChooser.getUI();
fcUi.setSelectedFile(defaultDir);
Class<? extends FileChooserUI> fcClass = fcUi.getClass();
Method setFileName = fcClass.getMethod("setFileName", String.class);
setFileName.invoke(fcUi, defaultDir.getName());
} catch (Exception e) {
e.printStackTrace();
}
Malheureusement, setFileName n'est pas inclus dans l'interface utilisateur, d'où la nécessité de l'appeler dynamiquement. Seulement testé sur mac.