黑马程序员技术交流社区
标题:
怎么删除带内容的文件夹
[打印本页]
作者:
code2014
时间:
2014-5-21 22:08
标题:
怎么删除带内容的文件夹
怎么删除带内容的文件夹
作者:
Sevenette
时间:
2014-5-21 22:47
本帖最后由 Sevenette 于 2014-5-21 22:50 编辑
在window中,删除目录从里面住外删除的,需要用到递归。
删除的文件不会出现在回收站里。
import java.io.*;
class removeDir {
public static void main(String[] args) {
File dir = new File("d:\\testDir");
remove(dir);
}
public static void remove(File dir) {
File[] files = dir.listFiles();
for (int x = 0; x < files.length; x++) {
if (!files[x].isHidden() && files[x].isDirectory())
remove(files[x]);
else
System.out.println(files[x].toString() + "-file-"
+ files[x].delete());// 删除的时候打印一下,以便看到是否重删等
}
System.out.println(dir.toString() + "-dir-" + dir.delete());
}
}
复制代码
作者:
zhrnghgwsws
时间:
2014-5-22 00:03
.......lkklkkk
作者:
波涛
时间:
2014-5-22 00:20
e嗯,楼上正解~ 好像视频里也有这个知识点的吧!
作者:
帽子
时间:
2014-5-22 05:33
/*
* 删除一个带内容的文件夹。
*
* 分析:
* A:封装目录
* B:获取该目录下所有文件或者文件夹File数组。
* C:遍历File数组,获取每一个File对象。
* D:判断该File:
* 文件夹:回到B。
* 文件:就删除。
*/
public class DeleteFileDemo {
public static void main(String[] args) {
// 封装目录
File srcFile = new File("test");
// 递归删除
deleteFiles(srcFile);
}
private static void deleteFiles(File srcFile) {
// 获取该目录下所有文件或者文件夹File数组。
File[] fileArray = srcFile.listFiles(); // 可能返回null
// 加入不为null的判断,就可以删除你想删除的任意目录
if (fileArray != null) {
// 遍历File数组,获取每一个File对象。
for (File file : fileArray) {
// 判断该File:
if (file.isDirectory()) {
deleteFiles(file);
} else {
System.out.println(file.getName() + "---" +
file.delete());
}
}
// 删除文件夹
System.out.println(srcFile.getName() + "---" + srcFile.delete
());
}
作者:
思维
时间:
2014-7-22 10:51
视频里确实有这个知识点!
作者:
钟翠翠
时间:
2014-7-23 17:19
来学习一下!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2