我正在尝试查找内置硬盘的总大小。 这段代码给了我C:drive的大小。
long diskSize= new File("/").getTotalSpace();
我使用此代码,但它也在网络上添加了驱动器的大小。
long diskSize= 0;
File[] drives = File.listRoots();
if (drives != null && drives.length > 0) {
for (File aDrive : drives) {
diskSize=diskSize+(aDrive.getTotalSpace()/1000000000); //(1000000000)Converting to GB
}
}
答案 0 :(得分:2)
您可以使用以下代码获取所有目录的总空间
package haneef.code.check;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class DirSpace
{
static Double val=1000000000.00;
public static void main(String[] args)
{
File file=new File("\\");
List<Double> values=new ArrayList<Double>();
File[] list=file.listRoots();
for(File driver:list)
{
Double driveGB=driver.getTotalSpace()/val;
System.out.println("Driver "+driver+" Space - "+driveGB);
values.add(driveGB);
Double cDrive=values.get(0);
for(int i=1;i<values.size();i++)
{
Double totalSpace=cDrive+values.get(i);
System.out.println("Final --- Total space is "+totalSpace);
}
}
}
}
控制台输出 -
驱动程序C:\ Space - 107.583893504
司机D:\空间 - 212.381724672
决赛---总空间为319.965618176