我需要计算目录的物理大小.这样做的天真算法可能是:
public static long getFolderSize(File dir) {
long size = 0;
for (File file : dir.listFiles()) {
if (file.isFile()) {
System.out.println(file.getName() + " " + file.length());
size += file.length();
}
else
size += getFolderSize(file);
}
return size;
}
Run Code Online (Sandbox Code Playgroud)
但如何处理符号链接?
Din*_*ati -1
您最好使用其他 API 来获取与此相关的 API 的文件大小
public static long getFolderSize(File dir) {
long size = 0;
for (File file : dir.listFiles()) {
if (file.isFile()) {
System.out.println(file.getName() + " " + file.getTotalSpace());
size += file.getTotalSpace();
}
else
size += getFolderSize(file);
}
return size;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7259 次 |
| 最近记录: |