Java 安装和卸载硬盘驱动器

Java 安装和卸载硬盘驱动器,java,mount,hard-drive,unmount,Java,Mount,Hard Drive,Unmount,如何在Java编程语言中装载和卸载硬盘驱动器(与平台无关,因此不使用运行时来执行硬编码命令)?因为无法通过可移植方式(甚至使用相同的语义)进行装载和卸载,没有内置的Java方法可以做到这一点。想想看:Java应该在没有硬盘驱动器的平台上工作,那么怎么可能有一种独立于平台的方法来做到这一点呢? 此外,即使您将其限制在硬盘可用的平台上,Java如何抽象出不同的RAID/分区/切片等方法 你为什么想/需要这样做?答案是“是”和“否”。您无法在java中装载或卸载设备,因为每个操作系统都有自己的方法来执

如何在Java编程语言中装载和卸载硬盘驱动器(与平台无关,因此不使用运行时来执行硬编码命令)?

因为无法通过可移植方式(甚至使用相同的语义)进行装载和卸载,没有内置的Java方法可以做到这一点。

想想看:Java应该在没有硬盘驱动器的平台上工作,那么怎么可能有一种独立于平台的方法来做到这一点呢?
此外,即使您将其限制在硬盘可用的平台上,Java如何抽象出不同的RAID/分区/切片等方法

你为什么想/需要这样做?

答案是“是”和“否”。您无法在java中装载或卸载设备,因为每个操作系统都有自己的方法来执行此操作。但是您可以为本机接口提供使用适配器模式的JavaAPI。你应该做一些事情:

  • 创建支持装载/卸载命令的Java接口
  • 创建将接口实现为本机方法的类
  • 用C或其他语言创建此命令的本机实现。一个操作系统实现(Win、Mac、Linux)
  • 把它装在一个罐子里
  • 构建提供接口实现和加载本机库的小型工厂

它不是纯java,但我认为是一个很好的解决方案。客户端代码将使用java。

“平台独立”并不意味着不允许使用外部进程。您可以检查应用程序运行的操作系统。请参见
System.getProperty(“os.name”)根据该方法的结果,调用正确的过程。

Java应该在不存在硬盘驱动器的平台上工作?我想这样做是因为我正在研究创建自己的硬盘驱动器加密程序(有点像TrueCrypt)。Java有很多无法由所有支持的平台实现的功能,像AWT和Swing(想想“无头”服务器机器)。仅仅因为所有的目标平台都不能实现一些API并不意味着Java不能提供它们…@Gnarly:我想到的是智能手机、嵌入式设备等,但我想Java SE/EE(我想我们在这里讨论的)只能在有硬盘或类似设备的设备上运行。所以我的回答有点误导,很抱歉。我知道,但我只是希望JDK中有一个功能可以帮我做到这一点。