黑马程序员技术交流社区

标题: 一个弱智问题,不好意思了都。。 [打印本页]

作者: The_king丶    时间: 2014-6-16 20:33
标题: 一个弱智问题,不好意思了都。。
public class removeDir {

  public static void removeDir1(File dir){
          File[] file = dir.listFiles();
          
          for(int i = 0 ; i< file.length ; i++){
                  if(file[i].isDirectory()){
                          removeDir1(file[i]);
                         
                  }
                  else
                  {
                          System.out.println(file[i].toString()+"删除:"+file[i].delete());
                     
                  }
                      System.out.println(dir+"--文件夹--"+dir.delete());
          }
         public static void main(String args[]){
          File f1 = new File("E:\\JAVA\\java视频\\黑马程序员JAVA基础\\20\\文件夹一号");
          removeDir1(f1);
  }
}
  }
类中的删除文件夹方法为什么不能删除完整,求解!···小学渣求问。


作者: 回音    时间: 2014-6-16 20:40
本帖最后由 回音 于 2014-6-16 20:42 编辑

看错了...
作者: The_king丶    时间: 2014-6-16 20:41
只能说我这学渣想学好只能靠傻敲了;P
作者: 月光海    时间: 2014-6-16 20:46
我想说你说的不是不能完整删除而是误删除的问题把,因为代码在我这可以删除,只是打印的结果中有false,原因就在于你在循环中,不管是文件还是文件夹,循环每执行一次你就删除一次当前文件夹,那个文件夹中还有文件,当然结果为false。只需将删除文件夹那一句放在for循环外面即可
作者: The_king丶    时间: 2014-6-16 20:53
月光海 发表于 2014-6-16 20:46
我想说你说的不是不能完整删除而是误删除的问题把,因为代码在我这可以删除,只是打印的结果中有false,原 ...

谢谢月光海!完美解决。逻辑关系弄好了,代码却不是那样写,太粗心,我会加油的!:handshake




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2