Problemy z kodowaniem nazw plików Java 7 w OS X
Mam następujący kod:
public static void main( String[] args ) {
System.out.println(Locale.getDefault());
File f = new File("/Users/johngoering/Documents");
File[] fs = f.listFiles();
for (File ff : fs) {
System.out.println(ff.getName());
System.out.println(ff.exists());
}
}
W folderze Moje dokumenty mam plik o nazwie „öß.pdf”. Oto dane wyjściowe w Javie 6:
en_US
(...)
öß.pdf
true
(...)
Ale oto wyjście w Javie 7:
en_US
(...)
o����.pdf
false
(...)
Zwróć szczególną uwagę na tofile.exists
zwracafalse
dla pliku zwróconego przezlistFiles
!! Co daje? Czy jest jakiś sposób, aby to naprawić? Wygląda na to, że to błąd Java 7 ...