方法如下:
public static double getFileSize(File f) {
// 判断文件是否存在
if (f.exists()) {
double size = 0;
File flist[] = f.listFiles();
for (int i = 0; i < flist.length; i++) {
if (flist[i].isDirectory()) {
size = size + getFileSize(flist[i]);
} else {
size = size + flist[i].length();
}
}
return size;
}
return 0;
}
调用:
System.out.println(df.format(getFileSize(file) / 1024 / 1024));
结果显示为保留两位小数,单位为MB