Как получить папку Linux и значки файла и имена в Java?

Я создаю дерево папок и файлов в Java. Windows и OSX возвращают системные значки и имя со следующим кодом:

new JFileChooser().getIcon(File f);
new JFileChooser().getName(File f);

Там возможность состоит в том, чтобы получить значки и название систем Unix?. Системная команда была бы в порядке также.

Спасибо.

6
задан André 15 June 2010 в 07:49
поделиться

3 ответа

не могу добавить комментарий, поэтому пишу как ответ :

Посмотрите на https://stackoverflow.com/questions/1629172/how-do-you-get-the-icon-mime-type- and-application-associated-with-a-file-in-the

Все эти ответы заставят вас испачкать руки в C или C++. Java никогда не рифмовалась с native look and feel...

2
ответ дан 17 December 2019 в 20:29
поделиться

Я не тестировал, но этот код должен работать в большинстве систем:

FileSystemView view = FileSystemView.getFileSystemView();
Icon icon = view.getSystemIcon(file);
0
ответ дан 17 December 2019 в 20:29
поделиться

Вы всегда можете получить имя системы, над которой работаете, Java позволяет сделать собственное выполнение и захватите результаты этого (командная строка, так что для разновидностей unix, Runtime.exec ("uname -a");), затем проанализируйте результаты в потоке вывода.

При этом существует ряд различных реализаций слоев графического интерфейса пользователя поверх ядра unix, и нет не стандартного способа получения сопоставлений между типами файлов и изображениями значков. Вы можете сделать решение, специфичное для оконного менеджера, но вам потребуется изменить алгоритм в зависимости от того, какой wm используется.

0
ответ дан 17 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: