1 /* 2需求:删除H:\demo目录下的带内容的文件 3分析: 4A:封装该目录 5B:获取该目录下所有的文件或文件夹的File数组 6C:遍历该File数组,获取每一个File对象 7D:判断所遍历的FIle对象 8 是否是文件夹 9 是:返回步骤B10 不是:判断里面是否有内容11 有:删除12 不是:不理13B-D设为递归方法:14返回类型;void15参数列表:File xxx16出口:文件里面有内容17 */18 package zl_DiGui;19 20 import java.io.File;21 22 public class FileDeleteDemo {23 24public static void main(String[] args) {25 26 //封装该目录27 File allfile = new File("H:\\demo");28 29 //调用递归30 deletefile(allfile); 31}3233//递归方法34private 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 }