如何使用Java查找剩余的磁盘空间?

2022-08-31 13:35:07

如何使用Java查找剩余的磁盘空间?


答案 1

查看文件类文档。这是 1.6 中的新功能之一。

这些新方法还包括:

  • public long getTotalSpace()
  • public long getFreeSpace()
  • public long getUsableSpace()

如果您仍在使用1.5,则可以使用Apache Commons IO库及其FileSystem类。


答案 2

Java 1.7有一个稍微不同的API,可用空间可以通过getTotalSpace(),getUnallocationSpace()getUsableSpace()方法通过FileStore类进行查询

NumberFormat nf = NumberFormat.getNumberInstance();
for (Path root : FileSystems.getDefault().getRootDirectories()) {

    System.out.print(root + ": ");
    try {
        FileStore store = Files.getFileStore(root);
        System.out.println("available=" + nf.format(store.getUsableSpace())
                            + ", total=" + nf.format(store.getTotalSpace()));
    } catch (IOException e) {
        System.out.println("error querying space: " + e.toString());
    }
}

此 API 的优点是,当查询磁盘空间失败时,您将获得有意义的异常。


推荐