![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| ki6opr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 20.12.2006 Репутация: нет Всего: нет |
столкнулся с необходимостью определить тип накопителя из приложения , тоесть есть в системе некоторые диски C , D , E и F допустим, из которых C и D - это жесткие диски а E и F - съемные устройства, метод класса FileSystemView isDrive , isFloppy оставлены без реализации (всегда возвращают false), мб сталкивался кто-нибудь с такой проблемой ?
но получают же как то swing'овые диалоги выбора файлов иконки с дисков и прочих устройств (тоесть получается что как то узнаю тип устройства). сам в это сторону сейчас и копаю |
|||
|
||||
| ki6opr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 20.12.2006 Репутация: нет Всего: нет |
нашел платную библиотеку с нативным кодом которая позволяют работать с ФС, но хотелось бы бесплатно
|
|||
|
||||
| Andy_L20066 |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 10.3.2008 Репутация: нет Всего: 1 |
интересный вопрос... лично никогда с такой проблемой не сталкивался... только что случайно нашел статью... не знаю поможет ли она тебе...
http://forum.java.sun.com/thread.jspa?thre...ssageID=3658815 там пример вывода инфи о дисках, только в примере нужно писать: System.out.println(fsv.getSystemDisplayName(new File("c:/"))); System.out.println(fsv.getSystemDisplayName(new File("d:/"))); тогда на консоле будет: Local Disk (C:) Local Disk (D:) честно говоря... не знаю или ето то что тебе нужно.... |
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
Это они в базовом классе оставлены без реализации, в наследниках они переопределенны. Вот например так выглядит WindowsFileSystemView:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| ki6opr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 20.12.2006 Репутация: нет Всего: нет |
пасибо всем кто откликнулся
Добавлено через 1 минуту и 58 секунд 2 Andy у меня так был сделано но руководство не оч понравились стандартные иконки устройств (те которые ОС отдает на вывзов метода getSystemIcon() у FileSystemView) поэтому пришлось копаться |
|||
|
||||
| ki6opr |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 67 Регистрация: 20.12.2006 Репутация: нет Всего: нет |
собственно вот и ответ как ява определяет какую иконку рисовать
как видно в выделенном красным цветом фрагменте ShellFolder использует нативный метод который забирает у ОС нужные данные тоесть "чистой" java я наверное не обойдусь есть конечно индуская идея создать enum в котором будут перечисленны все виды девайсов ("Локальный диск" "CD-Rom" "Флоппи диск") и смотреть что вернет sf.getFolderType() , но сразу же эта программа сможет работать только на руских виндах (ну и если другие ОС возвратят туже надпись) имхо бред |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |