Java 删除文件夹的办法


Java 删除文件夹的办法
  1. File file = new File("D:/defonds/temp");  

如果 "D:/defonds/temp" 是一个空目录的话,可以成功删除。但是如果是一个非空目录的话,就无法成功删除,必须将其子文件(目录)删除干净才可删除成功。使用以下的方法可以成功删除非空文件夹:

  1. //递归删除文件夹   
  2.    private void deleteFile(File file) {  
  3.     if (file.exists()) {//判断文件是否存在   
  4.      if (file.isFile()) {//判断是否是文件   
  5.       file.delete();//删除文件    
  6.      } else if (file.isDirectory()) {//否则如果它是一个目录   
  7.       File[] files = file.listFiles();//声明目录下所有的文件 files[];   
  8.       for (int i = 0;i < files.length;i ++) {//遍历目录下所有的文件   
  9.        this.deleteFile(files[i]);//把每个文件用这个方法进行迭代   
  10.       }  
  11.       file.delete();//删除文件夹   
  12.      }  
  13.     } else {  
  14.      System.out.println("所删除的文件不存在");  
  15.     }  
  16.    }  

或者使用下边的这个方法,也很不错:

  1. public static void deleteAllFilesOfDir(File path) {  
  2.     if (!path.exists())  
  3.         return;  
  4.     if (path.isFile()) {  
  5.         path.delete();  
  6.         return;  
  7.     }  
  8.     File[] files = path.listFiles();  
  9.     for (int i = 0; i < files.length; i++) {  
  10.         deleteAllFilesOfDir(files[i]);  
  11.     }  
  12.     path.delete();  
  13. }  

相关内容