//传入指定目录
private static void deleteEmptyDir(File dir) {
if (dir.isDirectory()) {
File[] fs = dir.listFiles();
if (fs != null && fs.length > 0) {
for (int i = 0; i < fs.length; i++) {
File tmpFile = fs[i];
if(tmpFile.isFile()&&tmpFile.length()<=0){
tmpFile.delete();
}
if (tmpFile.isDirectory()) {
deleteEmptyDir(tmpFile);
}
if (tmpFile.isDirectory() && tmpFile.listFiles().length <= 0) {
tmpFile.delete();
}
}
}
if (dir.isDirectory() && dir.listFiles().length == 0) {
dir.delete();
}
}
}
方法二:
private static void deleteFileDir(File file)
{
if(null==file)
return;
if(file.isDirectory()&&file.listFiles().length>0)
{
File[] fileList= file.listFiles();
for(int i=0;i<fileList.length;i++)
{
if(fileList[i].isFile()&&fileList[i].length()<=0)
{
fileList[i].delete();
deleteFileDir(fileList[i].getParentFile());
}
if(fileList[i].isDirectory()&&fileList[i].listFiles().length<=0)
{
fileList[i].delete();
deleteFileDir(fileList[i].getParentFile());
}
if(fileList[i].isDirectory())
{
deleteFileDir(fileList[i]);
}
}
}
}