IFileStore не может прочитать по пути с акцентированными символами Eclipse RCP - PullRequest
0 голосов
/ 11 февраля 2019

IFileStore представляет файл в локальной файловой системе моего приложения RCP.Это прекрасно работает в Windows для любого пути.Однако в Mac OS объект iFileStore не может правильно получить информацию, если путь содержит символы с акцентом, такие как á é í.

IFileInfo iFileInfo = iFileStore.fetchInfo();

В любом случае это может быть обработано?

1 Ответ

0 голосов
/ 11 февраля 2019

macOS использует «разложенный» формат для путей к файлам - ударение сохраняется отдельно от символа.Это называется форматом Unicode NFD.

В плагине Eclipse вы можете использовать com.ibm.icu.text.Normalizer2 для преобразования строки в разложенный формат

Normalizer2 normalizer = Normalizer2.getNFDInstance();

String decomposed = normalizer.normalize(string);

Использовать

EFS.getLocalFileSystem().getStore(new Path(decomposed));

чтобы получить IFileStore с пути

...