2 u014353911 u014353911 于 2017.09.19 17:26 提问

java如何获取磁盘所有分区信息,谢谢解答

java通过什么方法可以获取硬盘的分区信息,以及每个分区的磁盘空间及剩余空间,谢谢。

2个回答

caozhy
caozhy   Ds   Rxr 2017.09.20 08:36
已采纳
 import java.io.File;
import java.text.DecimalFormat;

public class Ypxx {
    public static void main(String[] args) {
        File[] roots = File.listRoots();// 获取磁盘分区列表
        for (File file : roots) {
            System.out.println(file.getPath() + "信息如下:");
            long free = file.getFreeSpace();
            long total = file.getTotalSpace();
            long use = total - free;
            System.out.println("空闲未使用 = " + change(free) + "G");// 空闲空间
            System.out.println("已经使用 = " + change(use) + "G");// 可用空间
            System.out.println("总容量 = " + change(total) + "G");// 总空间
            System.out.println("使用百分比 = " + bfb(use, total));
            System.out.println();
        }
    }

    public static long change(long num) {
        // return num;
        return num / 1024 / 1024 / 1024;
    }

    public static String bfb(Object num1, Object num2) {
        double val1 = Double.valueOf(num1.toString());
        double val2 = Double.valueOf(num2.toString());
        if (val2 == 0) {
            return "0.0%";
        } else {
            DecimalFormat df = new DecimalFormat("#0.00");
            return df.format(val1 / val2 * 100) + "%";
        }
    }
}

u014353911
u014353911 csdn一个贴发了3次,今天才看到给审核了。
5 个月之前 回复
Small_Mouse0
Small_Mouse0   Rxr 2017.09.19 20:48
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!