注意:File.length()只能用于计算文件大小,不能用于统计文件夹大小。
/**统计文件大小
* @param file
* @return
*/
public static long getFileLength(File file) {
if(file.isFile()){
return file.length();
}
long len = 0;
File[] files = file.listFiles();
for(File f:files){
if(f.isFile()){
len = len + f.length();
}else{
len = len + getFileLength(f);
}
}
return len;
}
注意:File.delete();只能用于删除单个文件
/**删除文件
* @param dir
*/
public static void deleteFile(File dir) {
if(dir.isFile()){
dir.delete();
}else{
File[] files = dir.listFiles();
for(File f:files){
if(f.isFile()){
f.delete();
}else{
deleteFile(f);
}
}
}
//循环结束后,把空文件夹删掉
dir.delete();
}
本文详细介绍了如何使用Java进行文件和文件夹大小的统计,以及如何递归地删除文件和空文件夹。提供了具体的方法实现,包括使用File.length()获取文件大小,通过遍历文件夹内的所有文件来计算总大小,以及使用File.delete()进行文件删除。
677

被折叠的 条评论
为什么被折叠?



