<span style="font-size:18px;"> File file=new File(Environment.getExternalStorageDirectory(), "/cache/");
if (!file.exists())
file.mkdirs();
long size=getFileSize(file)/1024/1024;//单位 M
Toast.makeText(MainActivity.this,"文件夹得大小为----"+size,Toast.LENGTH_SHORT).show();
if (size>100){
deleteFiles(file);
Toast.makeText(MainActivity.this,"删除后的文件夹得大小为----"+size,Toast.LENGTH_SHORT).show();
}
public long getFileSize(File dir) {
if (!dir.isDirectory()){
fileSize+=dir.length();
Log.i("文件大小","----"+fileSize);
}else{
for (File file:dir.listFiles()){
if (!file.isDirectory()){
fileSize+=file.length();
}else {
getFileSize(file);
}
}
}
return fileSize;
}
private boolean deleteFiles(File dir) {
if (dir==null&&!dir.exists()){
return false;
}
if (dir.isFile()|| dir.listFiles()==null){
dir.delete();
return true;
}else{
for (File file:dir.listFiles()){
if (file.isFile()){
file.delete();
}else if (file.isDirectory()){
deleteFiles(file);
}
}
dir.delete();
}
return true;
}</span>
判断文件夹的大小,当超过多少M就删除。
最新推荐文章于 2024-07-14 03:24:00 发布