`
zhangbaoming815
  • 浏览: 150358 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

删除一个目录下的所有文件及文件夹

    博客分类:
  • File
阅读更多

删除一个目录下的所有文件

import java.io.File;
/** 
 * 删除此路径名表示的文件或目录。 
 * 如果此路径名表示一个目录,则会先删除目录下的内容再将目录删除,所以该操作不是原子性的。 
 * 如果目录中还有目录,则会引发递归动作。 
 * @param filePath 
 *            要删除文件或目录的路径。 
 * @return 当且仅当成功删除文件或目录时,返回 true;否则返回 false。 
 */ 
public class DeleteAllFileFromParentCatalog {
 
    public boolean deleteFile(String filePath) {  
        File file = new File(filePath);  
        return deleteFile(file);  
    }  
      
    private boolean deleteFile(File file){  
        File[] files = file.listFiles();  
        for(File deleteFile : files){  
            if(deleteFile.isDirectory()){  
                //如果是文件夹,则递归删除下面的文件后再删除该文件夹  
                if(!deleteFile(deleteFile)){  
                    //如果失败则返回  
                    return false;  
                }  
            } else {  
                if(!deleteFile.delete()){  
                    //如果失败则返回  
                    return false;  
                }  
            }  
        }  
        file.delete();
        return true;  
    }

	public static void main(String[] args) {
		String filePath = "E:/OKnew";
//		new DeleteAllFileFromParentCatalog().deleteAllFile(fileName);
		boolean flag = new DeleteAllFileFromParentCatalog().deleteFile(filePath);
		System.out.println(flag);
	}
}
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics