package cn.itcast_03;import java.io.File;/* * 需求:递归删除带内容的目录 * * 给定目录:demo * * 分析: * A:封装目录 * B:获取该目录下的文件或者文件夹的File数组 * C:遍历该File数组,得到每个File对象 * D:判断该File对象是否是文件夹 * 是:回到B * 否:就删除 */public class FileDeleteDemo { public static void main(String[] args) { // 封装目录 File srcFolder = new File("demo"); // 递归实现 DeleteFolder(srcFolder); } /* * 方法: * 返回值类型:void * 参数列表:File srcFolder * 出口条件: * 如果是文件夹就删除 * 规律: * 从文件开始删除,一直到文件夹 */ PRivate static void DeleteFolder(File srcFolder) { // 获取该目录下的文件或者文件夹的File数组 File[] fileArray = srcFolder.listFiles(); if (fileArray != null) {// 避开系统保护文件或者文件夹,其它都删除 // 遍历该File数组,得到每个File对象 for (File file : fileArray) { // 判断该File对象是否是文件夹 if (file.isDirectory()) { DeleteFolder(file); } else { System.out.println(file.getName() + "---" + file.delete()); } } System.out .println(srcFolder.getName() + "---" + srcFolder.delete()); } }}
新闻热点
疑难解答