当前位置: 移动技术网 > IT编程>开发语言>Java > Java实现文件及文件夹的删除

Java实现文件及文件夹的删除

2020年07月17日  | 移动技术网IT编程  | 我要评论

Java实现文件及文件夹的删除

1、删除单个文件

    public static boolean deleteFile(String fileName) {
        File file = new File(fileName);
        // 如果文件路径只有单个文件
        if (file.exists() && file.isFile()) {
            if (file.delete()) {
                System.out.println("删除文件" + fileName + "成功!");
                return true;
            } else {
                System.out.println("删除文件" + fileName + "失败!");
                return false;
            }
        } else {
            System.out.println(fileName + "不存在!");
            return false;
        }
    }

2、删除文件夹及文件夹下的文件

	public static boolean deleteAllFile(String dir) {
		// 如果dir不以文件分隔符结尾,自动添加文件分隔符
//		if (!dir.endsWith(File.separator))
//			dir = dir + File.separator;
		File dirFile = new File(dir);
		// 如果dir对应的文件不存在,或者不是一个目录,则退出
		if ((!dirFile.exists()) || (!dirFile.isDirectory())) {
			System.out.println("删除文件夹失败:" + dir + "不存在!");
			return false;
		}
		boolean flag = true;
		// 删除文件夹中的所有文件包括子文件夹
		File[] files = dirFile.listFiles();
		for (int i = 0; i < files.length; i++) {
			// 删除子文件
			if (files[i].isFile()) {
				flag = DeleteFile.deleteFile(files[i].getAbsolutePath());
				if (!flag)
					break;
			}
			// 删除子文件夹
			else if (files[i].isDirectory()) {
				flag = DeleteFile.deleteAllFile(files[i].getAbsolutePath());
				if (!flag)
					break;
			}
		}
		if (!flag) {
			System.out.println("删除文件夹失败!");
			return false;
		}
		// 删除当前文件夹
		if (dirFile.delete()) {
			System.out.println("删除文件夹" + dir + "成功!");
			return true;
		} else {
			return false;
		}
	}

测试:

	public static void main(String[] args) {
		// 删除一个文件夹及文件夹下的文件
		String dir = "F:/c";
		DeleteFile.deleteAllFile(dir);
	}

参考文章:Java 代码完成删除文件、文件夹操作

上一篇:Java的IO流实现文件和文件夹的复制

本文地址:https://blog.csdn.net/yh991314/article/details/107342086

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网