Java Test磁盘是SSD或HDD

时间:2017-05-06 08:27:40

标签: java file filesystems ssd


我搜索了很多关于它但我没有找到任何东西。 我有File f = File.getRoots().get(0);的文件,我会测试这个驱动器是SSD还是硬盘。

这可能吗? 这是一些伪代码,你可以看到我需要它:

File f = myFile.getRoot();
if(isSSD(f)){
     System.out("We will write to SSD are you shure?");
}

如果有人知道如何编写public static isSSD(File f)方法,请提供帮助。

我知道没有跨平台解决方案所以我认为我需要一个用于linux mac和windows:

if(System.getProperty("os.name").contains("Windows")){
    //The code for Win
}else if(System.getProperty("os.name").contains("UNIX")){
    //The code for linux
}else if(System.getProperty("os.name").contains("Mac")){
    //The code for mac
}

Gratefull for Answers。

1 个答案:

答案 0 :(得分:1)

每种操作系统都有方法,但本机Java没有,所以可能需要一些时间来适应Java(JNI调用等)。例如:

或者,您可以运行基准测试并检查顺序读取和随机读取是否具有相似的性能(SSD)(HDD)。您需要考虑缓存等。