A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© The_king丶 中级黑马   /  2014-6-16 20:33  /  1043 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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);
  }
}
  }
类中的删除文件夹方法为什么不能删除完整,求解!···小学渣求问。

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 带着代码来学习,给你个赞!

查看全部评分

4 个回复

倒序浏览
本帖最后由 回音 于 2014-6-16 20:42 编辑

看错了...
回复 使用道具 举报
只能说我这学渣想学好只能靠傻敲了;P
回复 使用道具 举报
我想说你说的不是不能完整删除而是误删除的问题把,因为代码在我这可以删除,只是打印的结果中有false,原因就在于你在循环中,不管是文件还是文件夹,循环每执行一次你就删除一次当前文件夹,那个文件夹中还有文件,当然结果为false。只需将删除文件夹那一句放在for循环外面即可

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 赞一个!

查看全部评分

回复 使用道具 举报
月光海 发表于 2014-6-16 20:46
我想说你说的不是不能完整删除而是误删除的问题把,因为代码在我这可以删除,只是打印的结果中有false,原 ...

谢谢月光海!完美解决。逻辑关系弄好了,代码却不是那样写,太粗心,我会加油的!:handshake
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马