首页 > 代码库 > java 20 -3 递归之删除特定目录下的特定文件

java 20 -3 递归之删除特定目录下的特定文件

 1 /* 2      需求:删除H:\demo目录下的带内容的文件 3      分析: 4          A:封装该目录 5          B:获取该目录下所有的文件或文件夹的File数组 6          C:遍历该File数组,获取每一个File对象 7          D:判断所遍历的FIle对象 8              是否是文件夹 9                  是:返回步骤B10                  不是:判断里面是否有内容11                      有:删除12                      不是:不理13      B-D设为递归方法:14          返回类型;void15          参数列表:File xxx16          出口:文件里面有内容17  */18 package zl_DiGui;19 20 import java.io.File;21 22 public class FileDeleteDemo {23 24     public static void main(String[] args) {25         26         //封装该目录27         File allfile = new File("H:\\demo");28         29         //调用递归30         deletefile(allfile);    31      }32     33     //递归方法34     private static void deletefile(File allfile) {35         //获取该目录下的所有文件或文件夹的File数组36         File[] arrayfile = allfile.listFiles();37         38         //遍历该数组,获取每一个File对象39         for(File file : arrayfile){40             //判断是否是文件夹41             if(file.isDirectory()){42                 //是的话,返回步骤B43                 deletefile(file);44             }45             else{46                 //不是,就判断是否为空文件47                 long l = file.length();48                 if(l != 0 ){49                     file.delete();50                 }51                 //如果是空文件的话,就输出它的名称和绝对路径52                 else{53                     System.out.println(file.getName()+"\t"+file.getAbsolutePath());54                     /*55                     a.txt    H:\demo\a.txt56                     地方.mp3    H:\demo\地方.mp357                     斯蒂芬撒.avi    H:\demo\撒旦发射的\斯蒂芬撒.avi58                     */59                 }60             }61         }62 63     }64 65 }

 

java 20 -3 递归之删除特定目录下的特定文件