Монтирование и размонтирование жестких дисков
Как я могу смонтировать и размонтировать жесткие диски (независимо от платформы, поэтому не используйте Runtime для выполнения жестко запрограммированной команды) на языке программирования Java?
4 ответа
Ответ и да и нет". Вы не могли монтировать или размонтировать устройства в java, потому что у каждой ОС есть свои методы для этого. НО... вы можете предоставить Java API, который использует шаблон адаптера для собственного интерфейса. Вы должны сделать несколько вещей:
- создавать интерфейсы Java, которые поддерживают команды mount/unmount
- создавать классы, которые реализуют интерфейсы как нативные методы
- создавать собственные реализации этих команд на C или другом языке. Одна реализация для ОС (Win, Mac, Linux)
- упаковать в одну банку
- построить небольшую фабрику, которая обеспечивает реализацию интерфейса и загружать собственные библиотеки
Это не чистая Java, но я думаю, что это хорошее решение. Код клиента будет использовать Java.
"Независимость от платформы" не означает, что вам не разрешено использовать внешние процессы. Вы можете проверить ОС, на которой работает ваше приложение. Увидеть System.getProperty("os.name");
В зависимости от результата этого метода, вызовите правильный процесс.
Поскольку нет способа сделать это переносимым (или даже с той же семантикой), нет встроенного Java-метода для этого.
Подумайте об этом: Java должна работать на платформах, где нет жестких дисков, так как же может быть независимый от платформы способ сделать это?
Кроме того, даже если вы ограничиваете его платформами, на которых доступны жесткие диски, как Java должна абстрагироваться от различных подходов к RAID-массивам / разделам / слайсам и т. Д.?
Почему вы хотите / должны это сделать?