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

java 删除目录

    博客分类:
  • java
 
阅读更多
由于项目需要,要定时的把文件和目录删掉,以前很少做文件删除,都是去创建文件和读取文件,就找到了java的api文档去看有没有删除的方法,找到File类,java的File没有目录与文件的区分,都用File类表示,找到了一个方法。
 File.delete(); 

可怎么测试就是删除不了,文件加依然存在,郁闷了,没办法就硬着去读file.delete()方法的说明文档
Deletes the file or directory denoted by this abstract pathname. If this pathname denotes a directory, then the directory must be empty in order to be deleted.
大意就是删除一个File类代表的文件或目录,如果是目录,这个目录必须为空。
原来是这样,要删除目录,必须先删除子目录。就自己参考着别人的写了个删除的方法,给遇到同样问题的一个参考。代码如下
  package com.own;

import java.io.File;


public class FileUtil {
  
	
	/**
	 * 把整个目录(包括子目录)从硬盘中删除掉
	 * @param parent  目录
	 * @return
	 */
	public static  boolean removeDiectory(File parent){
		boolean isSuccess = false;
		if(parent == null){
			throw new IllegalArgumentException("目录为空");
		}
		
		if(parent.isFile()){
			throw new IllegalArgumentException("参数必须是文件");
		}
		
	    //列出子文件(只包括子文件不包括子文件的子文件)	
		File[] childFiles = parent.listFiles();
		for(File file : childFiles){
    		//如果是目录递归的调用
			if(file.isDirectory()){ 
    			isSuccess = removeDiectory(file);
    		}else{
    			isSuccess = file.delete();
    		}
		}
		//删除顶级目录
		isSuccess = parent.delete();
		return isSuccess;
	}
	
	
	
}
   


测试代码
   public class FileUtilTest {

	
	private  File parent;
	
	@Before
	public void setUp() throws IOException{
		parent = new File("d:/aa");
		parent.mkdir();
		File subfile = new File(parent,"bb");
		subfile.mkdir();
		subfile = new File(subfile,"test.txt");
		subfile = new File(parent,"cc/dd");
		subfile.mkdirs();
		subfile.createNewFile();
		subfile = new File(subfile,"bb.txt");
		subfile.createNewFile();
	}
	
	
	@Test
	public void testRemoveDiectory() {
	       boolean actual =  FileUtil.removeDiectory(parent);	
	       Assert.assertEquals(true,actual);
	}

	 

分享到:
评论

相关推荐

    java删除目录及文件夹.txt

    本文将基于“java删除目录及文件夹.txt”这一主题,深入解析如何使用Java编程语言来实现对文件和目录的有效删除,这不仅适用于日常的项目清理工作,也是提升代码质量和系统性能的关键技能。 ### 核心知识点:Java中...

    java 下载文件 压缩且删除源文件(支持文件夹与文件)

    1、压缩文件或者目录(只是压缩不删除):zipFileOrDirectory 2、程序自动判断如果是文件那么就是源文件下载,如果是文件夹那么就先 压缩然后再下载,然后再删除:downFileDel 3、不管什么文件都是最后以zip下载:...

    java 删除指定目录下的文件

    至于`Java.jpg`文件,这可能是一个示例图片文件,与删除目录的操作无关。在Java中,我们可以使用`java.awt.image.BufferedImage`和`javax.imageio.ImageIO`类来读取、处理和保存图片,但这超出了当前讨论的范畴。 ...

    java删除文件夹(删除文件)

    用JAVA 实现的删除文件(夹)程序,运行的时候,输入正确的文件夹路径,然后确定删除,文件夹路径不正确的时候不会做任何事情。

    Java删除不为空的目录

    Java删除不为空的目录,在图形化系统如Windows 和大部分的Linux 中删除一个目录是很容易的事,但是事实上并非如此,我们感到方便是因为操作系统帮我们完成了底层的删除工作,真正的删除工作是比较繁琐的。...

    Java中删除文件、删除目录及目录下所有文件

    `Files.delete()`方法会递归地删除目录及其所有内容,如果过程中遇到任何问题(如权限问题或文件被占用),将抛出`IOException`。 4. 自定义递归删除目录: 对于Java 6或更低版本,没有内置的递归删除功能。你...

    java删除指定目录下所有空文件夹的方法

    在Java编程中,有时我们需要处理文件系统操作,比如删除特定目录下的空文件夹。这个任务涉及到文件和目录的遍历以及目录的删除操作。下面我们将详细探讨如何实现这个功能。 首先,我们需要创建一个类,例如`...

    java删除指定文件夹下文件

    以上就是使用Java删除指定文件夹下文件的基本步骤和关键知识点。通过`SimpleFileVisitor`,我们可以更灵活地控制文件和目录的删除操作,实现复杂的需求。在实际项目中,一定要注意异常处理和权限问题,确保代码的...

    java删除本地文件.txt

    在Java编程语言中,操作文件是一项非常常见的任务。本文将详细介绍如何使用Java程序删除本地文件...此外,还提供了一个递归删除目录及其包含的所有文件的方法。通过这些知识,开发者可以更灵活地处理各种文件操作需求。

    删除文件目录以及文件

    java中删除文件,可以是单个文件或文件夹

    java程序实现文件夹删除

    在Java编程语言中,删除文件或文件夹是一个常见的任务,特别是在处理文件系统操作时。本文将深入探讨如何使用Java API来实现文件夹及其内容的删除功能。首先,我们需要理解Java中处理文件操作的核心类`java.io.File`...

    Java删除文件、目录及目录下所有文件的方法实例

    本文将详细介绍如何使用Java删除单个文件、目录以及目录下的所有文件。关键在于理解`File`类提供的`delete()`方法及其使用方式。 首先,`File.delete()`方法是Java中用于删除文件或空目录的基本工具。它返回一个...

    java 删除文件夹内指定前缀名字的所有文件

    在Java编程语言中,删除文件或文件夹是一项常见的任务,特别是在进行文件系统操作时。这里我们将深入探讨如何在Java中删除文件夹内指定前缀名字的所有文件。首先,我们需要了解`java.io.File`类,它是Java标准库中的...

    FTP完全删除文件,及上传下载删除目录

    java远程FTP浏览文件及操作文件删除,上传下载

    Java删除文件目录或文件代码,带日志输出

    代码详细描写了Java删除整个目录以及文件功能,并且带有日志记录功能,代码清晰简单,如果朋友不太明白,可以给我留言我给你讲解。 其中运用到了递归思想,如果朋友您对递归不太熟悉,也可以多研究学习一下。代码...

    java递归实现删除文件夹

    - **文件和文件夹操作**:Java的`java.io`包提供了处理文件和目录的类,如`File`类,它允许我们创建、读取、写入、删除文件和目录。 2. **核心方法** - `File.delete()`: 这是`File`类中的一个方法,用于删除指定...

    JAVA递归删除目录失败

    so easy,写了一个递归删除目录,但结果出乎意料,一个递归目录删除成功,而另外一个却删除失败,刚开始怀疑文件被占用问题,后来被排除了。后来尝试使用各种工具,文件粉碎机都不能解决。最后,通过重命名解决此...

    java创建和删除文件夹、文件

    在Java中,`java.io.File`类提供了创建和删除文件或目录的功能。下面将详细介绍如何利用这些功能实现文件和文件夹的基本操作。 #### 一、创建文件夹 创建文件夹是通过`File`类的`mkdir()`或`mkdirs()`方法实现的。...

    java删除文件夹的代码

    在Java编程中,删除文件或文件夹是一项常见的操作。这里我们将深入探讨如何使用Java的`java.io.File`类来实现这一功能,特别是不使用递归而采用循环的方式。首先,让我们了解一下`File`类的基本概念。 `java.io....

Global site tag (gtag.js) - Google Analytics