Монтирование и размонтирование жестких дисков - PullRequest
3 голосов
/ 01 апреля 2011

Как я могу монтировать и размонтировать жесткие диски (независимые от платформы, поэтому не нужно использовать Runtime для выполнения жестко запрограммированной команды) на языке программирования Java?

Ответы [ 4 ]

6 голосов
/ 01 апреля 2011

Ответ - «Да и нет».Вы не могли монтировать или размонтировать устройства в java, потому что у каждой ОС есть свои методы для этого.НО ... вы можете предоставить Java API, который использует шаблон адаптера для собственного интерфейса.Вы должны сделать несколько вещей:

  • создать интерфейсы Java, которые поддерживают команды монтирования / размонтирования
  • создать классы, реализующие интерфейсы как собственные методы
  • создать собственные реализации этих командна С или другом языке.Одна реализация для ОС (Win, Mac, Linux)
  • упаковать ее в один jar
  • построить небольшую фабрику, которая обеспечивает реализацию интерфейса и загрузить собственные библиотеки

Itэто не чистая Java, но я думаю, что это хорошее решение.Код клиента будет использовать Java.

1 голос
/ 01 апреля 2011

«Независимость от платформы» не означает, что вы не можете использовать внешние процессы.Вы можете проверить ОС, на которой работает ваше приложение.См. System.getProperty("os.name"); В зависимости от результата этого метода, вызовите правильный процесс.

1 голос
/ 01 апреля 2011

Поскольку нет способа сделать это переносимым (или даже с той же семантикой), для этого не существует встроенного метода Java.

0 голосов
/ 01 апреля 2011

Подумайте об этом: предполагается, что Java будет работать на платформах, где нет жестких дисков, так как может быть независимый от платформы способ сделать это?
Кроме того, даже если вы ограничиваете его платформами, на которых доступны жесткие диски, как Java должна абстрагироваться от различных подходов к RAID-массивам / разделам / слайсам и т. Д.?

Почему вы хотите / должны это сделать?

...