Java基础知识强化之IO流笔记15:递归之删除带内容的目录案例
2024-08-21 12:54:30
1. 需求:递归删除带内容的目录
分析:
(1)封装目录
(2)获取该目录下的所有文件或者文件夹的File数组
(3)遍历该File数组,得到每一个File对象
(4)判断该File对象是否是文件夹
是:回到(2)
否:就删除
2. 案例代码实现:
(1)首先在如下路径,准备文件:
(2)代码如下:
package com.himi.diguidemo; import java.io.File; /**
* 需求:递归删除带内容的目录 分析: (1)封装目录 (2)获取该目录下的所有文件或者文件夹的File数组 (3)遍历该File数组,得到每一个File对象 (4)判断该File对象是否是文件夹 是:回到B 否:就删除
*
*
*/
public class DiGuiDemo4 { public static void main(String[] args) {
//封装目录
String path = "E:\\temp";
File file = new File(path); //递归实现
DeleteFolder(file);
} public static void DeleteFolder(File srcFolder) {
//获取该目录下的所有文件或者文件夹的File数组
File[] files = srcFolder.listFiles();
//遍历该File数组,得到每一个File对象
for(File f:files) {
//判断该File对象是否是文件夹
if(f.isDirectory()) {
DeleteFolder(f);
} else {
System.out.println(f.getParentFile().getName()+"目录下的"+f.getName()+"----"+f.delete());
}
}
} }
运行结果如下:
查看源目录如下:
最新文章
- JavaWeb前端:CSS
- 如何基于纯GDI实现alpha通道的矢量和文字绘制
- AIX 配置网卡
- 轻量级模块化开发框架 Hasor 核心模块 v0.0.2 发布
- Apache Spark源码走读之14 -- Graphx实现剖析
- Ubuntu14.04 搭建 node.js 环境(Binaries方式)
- IPVS
- 快速排序 javascript实现
- 【JAVA - SSM】之MyBatis与原生JDBC、Hibernate访问数据库的比较
- [置顶] jsp中c标签的使用
- mssql分页原理及效率分析
- PHP数字价格格式化,保留两位小数
- javascript中通过元素id和name直接取得元素
- x86服务器MCE(Machine Check Exception)问题
- bzoj2560串珠子(子集dp)
- 利用"SQL"语句自动生成序号的两种方式
- Docker入门实践
- 目标检测的图像特征提取之(一)HOG特征(转)
- php file_get_contents fopen 连接远程文件
- mysqldump --master-data=2 --single-transaction