需求:删除一个带内容的目录。删除原理,在windows中,删除目录从里面往外删除的,既然是从里往外删除,就需要用到递归。 代码如下:
import java.io.*;
class mydelete{
static void mydelete(File file){
File[] files=file.listFiles();
for(File f:files){
if(f.isDirectory())
mydelete(f);
else
f.delete();
}
file.delete();
}
public static void main(String[] args){
mydelete(new File("F:\\第二阶段:Java基础\\Java高级视频_IO输入与输出(备份)"));
}
}
java删除的文件不保存在回收站里。有些系统隐藏文件Java不能访问,删除时会返回空文件数组,接下来在高级for循环里会抛出空指针异常,所以遍历时应避开隐藏文件,可加判断语句if(!file.isHidden()),防止抛出空指针异常。
|
|