Java 删除文件、文件夹的办法

本文提供了两种实用方法来递归删除Java中的非空文件夹及其包含的所有子文件和子目录。第一种方法通过自定义函数实现,第二种方法提供了一个静态函数实现相同的功能。

不错的两个方法,收藏下

File file = new File("D:/temp"); 

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

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

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

public static void deleteAllFilesOfDir(File path) {  
    if (!path.exists())  
        return;  
    if (path.isFile()) {  
        path.delete();  
        return;  
    }  
    File[] files = path.listFiles();  
    for (int i = 0; i < files.length; i++) {  
        deleteAllFilesOfDir(files[i]);  
    }  
    path.delete();  
} 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值