本帖最后由 神之梦 于 2013-6-17 14:24 编辑
今天做了个小练习,想删除一个目录和里面的东西。
不管怎么弄就是删不掉,我把显示隐藏文件也打开了,没有看到有隐藏的文件,也没有读文件设置只读属性。为什么就是删不掉!win7系统。。。。。
求解???
代码:- /*
- 删除一个带内容的目录。
- 删除原理:
- 在windows中,删除目录从里面往外面删除的。
- 既然是从里往外删除。就需要用到递归。
- */
- import java.io.*;
- class RemoveDir
- {
- public static void main(String[] args)
- {
- File dir=new File("e:\\Test");
- removeDir(dir);
- }
- //删除传入路径目录
- public static void removeDir(File dir)
- {
- File[] files=dir.listFiles();
- for (File file : files )
- {
- if(!dir.isHidden()&&dir.isDirectory())
- removeDir(file);
- else
- System.out.println(file.toString()+":-file-:"+file.delete());
- }
- System.out.println(dir+":::dir:::"+dir.delete());
- }
- }
复制代码 文件夹内的东西(以打开了显示隐藏)
结果:
如果我在File("e:\\Test\\Test.java"),不去调用removeDir方法,直接dir.delete()的话,可以删除
也就是单个的可以删除,而我想删除这个目录却不行,是我哪里没有想到,求赐教!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|