我可以使用Java程序获得特定的磁盘空间(如C :)吗?

时间:2010-03-21 04:48:36

标签: java

我在Java中使用SystemEnvironment类来获取系统信息。

因为我只能获得RAM大小,我无法获得特定的磁盘空间,如c:和D:

代码是,

com.sun.management.OperatingSystemMXBean mxbean =(com.sun.management.OperatingSystemMXBean)ManagementFactory.getOperatingSystemMXBean(); System.out.println(“总RAM:”+ mxbean.getTotalSwapSpaceSize()/(1024 * 1024 * 1024)+“”+“GB”);

我可以在Java程序中获取此信息吗?

1 个答案:

答案 0 :(得分:8)

来自java.io.File API:

  • long getTotalSpace():返回此抽象路径名所指定的分区的大小。
  • long getUsableSpace():返回此抽象路径名所指定的分区上此虚拟机可用的字节数。
  • long getFreeSpace():返回此抽象路径名指定的分区中未分配的字节数。

以下代码段显示了如何使用它的示例:

for (File root : File.listRoots()) {
    System.out.format("%s (%d bytes free)%n", root, root.getFreeSpace());
}