java获得当前系统内存及硬盘使用情况

写道
import java.lang.management.ManagementFactory;

import com.sun.management.OperatingSystemMXBean;

public class Test {

public static void main(String[] args) {

OperatingSystemMXBean osmb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();

System.out.println("系统物理内存总计:" + osmb.getTotalPhysicalMemorySize() / 1024 / 1024 + "MB");

System.out.println("系统物理可用内存总计:" + osmb.getFreePhysicalMemorySize() / 1024 / 1024 + "MB");

}

}

ManagementFactory.getOperatingSystemMXBean()返回的是java.lang.management里面的 OperatingSystemMXBean ;

我们要用的是com.sun.management.OperatingSystemMXBean;

在java类库中可以查到:

public abstract Interface com.sun.management.OperatingSystemMXBean extends java.lang.management.OperatingSystemMXBean

所以我们可以强制转换一下。

jdk6.0下的磁盘使用情况例子:

import java.io.File;

/**

*

* jdk6.0下的磁盘使用情况例子

*/

public class Diskfree {

public static void main(String[] args) {

File[] roots = File.listRoots();//获取磁盘分区列表

for (File file : roots) {

System.out.println(file.getPath() + "信息如下:");

System.out.println("空闲未使用 = " + file.getFreeSpace() / 1024 / 1024 / 1024 + "G");//空闲空间

System.out.println("已经使用 = " + file.getUsableSpace() / 1024 / 1024 / 1024 + "G");//可用空间

System.out.println("总容量 = " + file.getTotalSpace() / 1024 / 1024 / 1024 + "G");//总空间

System.out.println();

}

}

}
 

你可能感兴趣的:(java,sun)