java递归删除带内容的目录案例

删除过程
第一步:封装目录
第二步:获取目录下的所有文件或者文件夹的File数组
第三步:遍历该FIle数组,得到每一个FIle独享
第四步:判断该File对象是否是文件夹
是:回到第一步
否:删除
第五步:最终删除文件夹

注意:删除不走回收站,慎删!

(1)全部删除代码

package 测试;

import java.io.File;

/*
 * 递归删除带内容的目录案例
 * 第一步:封装目录
        第二步:获取目录下的所有文件或者文件夹的File数组
        第三步:遍历该FIle数组,得到每一个FIle独享
        第四步:判断该File对象是否是文件夹
                         是:回到第一步
                          否:删除
         第五步:最终删除文件夹
 */
public class DeletTest {
	public static void main(String[] args) {
		File file=new File("D:\\Users\\xulihao\\Desktop\\t");
		delet(file);
	}

	private static void delet(File rootfile) {//(1)
		// TODO Auto-generated method stub
		File[] file=rootfile.listFiles();
		for(File f:file) {
			if(f.isFile()) {//如果是一个文件,先打印后删除。
					System.out.println("删除文件:"+f.getName());
					f.delete();
					
			}else {//是一个目录,递归调用(1),然后打印目录名字,然后删除。
				delet(f);
				System.out.println("删除目录:"+f.getName());
				f.delete();
			}
		}
		//最后一步,删除刚进来的根目录。
		System.out.println("根目录"+rootfile.getName()+"已经彻底删除!");
		rootfile.delete();
	}
}

运行结果:

删除前
在这里插入图片描述

删除后
在这里插入图片描述

(2)删除指定的MP4文件

package 测试;

import java.io.File;

/*
 * 递归删除带内容的目录案例
 * 第一步:封装目录
        第二步:获取目录下的所有文件或者文件夹的File数组
        第三步:遍历该FIle数组,得到每一个FIle独享
        第四步:判断该File对象是否是文件夹
                         是:回到第一步
                          否:删除
         第五步:最终删除文件夹
 */
public class DeletTest {
	public static void main(String[] args) {
		File file=new File("E:\\迅雷下载");
		delet(file);
	}

	private static void delet(File rootfile) {//(1)
		// TODO Auto-generated method stub
		File[] file=rootfile.listFiles();
		for(File f:file) {
			if(f.isFile()) {//如果是一个文件,先打印后删除。
				//如果要想删除指定格式的文件,加个if条件语句就行。
				if(f.getName().endsWith(".mp4")) {
					System.out.println("删除文件:"+f.getName());
					f.delete();
				}		
			}else {//是一个目录,递归调用(1),然后打印目录名字,然后删除。
				delet(f);
				//System.out.println("删除目录:"+f.getName());
				//f.delete();	
			}
		}
		//最后一步,删除刚进来的根目录。
		//System.out.println("根目录"+rootfile.getName()+"已经彻底删除!");
		//rootfile.delete();
	}
}

删除MP4文件前
在这里插入图片描述删除后
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值