如何在 Java 编程语言中安装和卸载硬盘驱动器(独立于平台,因此不使用运行时执行硬编码命令)?
user238033
问问题
3979 次
4 回答
6
答案是“是与否”。您无法在 java 中挂载或卸载设备,因为每个操作系统都有自己的方法来执行此操作。但是...您可以提供将适配器模式用于本机接口的 java api。你应该做一些事情:
- 创建支持挂载/卸载命令的 Java 接口
- 创建将接口实现为本机方法的类
- 用 C 或其他语言创建此命令的本机实现。一种操作系统的实现(Win、Mac、Linux)
- 把它装进一个罐子里
- 建立提供接口实现和加载本机库的小型工厂
它不是纯 Java,但我认为它是一个很好的解决方案。客户端代码将使用 java。
于 2011-03-31T20:20:40.343 回答
1
由于没有办法做到这一点可移植(甚至使用相同的语义),因此没有内置的 Java 方法可以做到这一点。
于 2011-03-31T20:08:02.027 回答
1
“平台独立”并不意味着您不允许使用外部进程。您可以检查您的应用程序正在运行的操作系统。请参阅System.getProperty("os.name");
根据该方法的结果,调用正确的过程。
于 2011-03-31T20:30:32.470 回答
0
想一想:Java 应该在没有硬盘驱动器的平台上工作,那么如何有一种独立于平台的方式来做到这一点呢?
此外,即使您将其限制在有硬盘可用的平台上,Java 应该如何抽象出 RAID/分区/切片等的不同方法?
你为什么想要/需要这样做?
于 2011-03-31T20:12:02.400 回答