慎用!Java慎用函数之File.delete()

盘点JAVA中延时任务的几种实现方式 (1)基于内存,应用重启(或宕机)会导致任务丢失 (2)基于内存存放队列,不支持集群 (3)依据compareTo方法排列队列,调用take阻塞式的取出第一个任务(不调用则不取出),比较不灵活,会影响时间的准确性。(1)基于内存,应用重启(或宕机)会导致任务丢失 (2)基于内存挂起线程实现延时,不支持集群 (3)代码耦合性大,不易维护 (4)一个任务就要新建一个线程绑定任务的执行,容易造成资源浪费。(1)基于内存,应用重启(或宕机)会导致任务丢失 (2)基于内存存放任务,不支持集群。 阅读详情

今天给大家介绍一个很好用的函数——java.io.File中的delete()函数

这个函数非常好用。好用到什么程度呢?

用这个函数删除文件删到你找到找不到……

而且还是秒删……压根儿反应不过来。

如果你特别恨一个人,请用File.delete()函数删除他的重要文件。

话不多说,上源码:

import java.io.File;

import java.util.Scanner;;


public class FileDelete {
	  
	    public static void main(String[] args) throws Exception {  
	    	String Filename;
	    	System.out.print("请输入您要删除的文件路径\n");
	    	Scanner reader = new Scanner(System.in);
	    	Filename=reader.next();
	    	System.out.println("正在删除"+Filename+"中……、\n");
	        delFolder(Filename);  
	    	System.out.print("删除完成!\n");
	    }  
	    /*** 
	     * 删除指定文件夹下所有文件 
	     *  
	     * @param path 文件夹完整绝对路径 
	     * @return 
	     */  
	    public static  boolean delAllFile(String path) {  
	        boolean flag = false;  
	        File file = new File(path);  
	        if (!file.exists()) {  
	            return flag;  
	        }  
	        if (!file.isDirectory()) {  
	            return flag;  
	        }  
	        String[] tempList = file.list();  
	        File temp = null;  
	        for (int i = 0; i < tempList.length; i++) {  
	            if (path.endsWith(File.separator)) {  
	                temp = new File(path + tempList[i]);  
	            } else {  
	                temp = new File(path + File.separator + tempList[i]);  
	            }  
	            if (temp.isFile()) {  
	                temp.delete();  
	            }  
	            if (temp.isDirectory()) {  
	                delAllFile(path + "/" + tempList[i]);// 先删除文件夹里面的文件  
	                delFolder(path + "/" + tempList[i]);// 再删除空文件夹  
	                flag = true;  
	            }  
	        }  
	        return flag;  
	    }  
	      
	    /*** 
	     * 删除文件夹 
	     *  
	     * @param folderPath文件夹完整绝对路径 
	     */  
	    public  static void delFolder(String folderPath) {  
	        try {  
	            delAllFile(folderPath); // 删除完里面所有内容  
	            String filePath = folderPath;  
	            filePath = filePath.toString();  
	            java.io.File myFilePath = new java.io.File(filePath);  
	            myFilePath.delete(); // 删除空文件夹  
	        } catch (Exception e) {  
	            e.printStackTrace();  
	        }
	        System.out.print("删除成功!\n");
	    }  

}

昨天写函数的时候,少写了一段地址名……整个文件夹都没了……

数据恢复了一天还没恢复好。已经不抱希望了……

晚安。

Android file.delete()与file.deleteOnExit()的区别 1.delete()方法: 当调用delete()方法时,直接删除文件,不管该文件是否存在,一经调用立即执行; 2.deleteOnExit()方法: 当调用deleteOnExit()方法时,只是相当于对deleteOnExit()作一个声明,当程序运行结束,JVM终止时才真正调用deleteOnExit()方法实现删除操作。即该方法是将删除的命令缓存了一下,到服务停止的时候再进... 阅读详情

相关推荐

WRF移动嵌套结合伏羲模型与CFD(PALM)高精度多尺度降尺度分析研究

WRF移动嵌套(Moving Nesting):动态调整高分辨率嵌套网格位置,追踪天气系统(如台风、强对流系统)以提高局地预报精度。伏羲(Fuxi)模型:国产数值模式,提供对WRF模拟的初始及边界条件优化。CFD(Computational Fluid Dynamics)PALM模型:精细化局地流场、湍流、温度分布。

m0_57411304的博客 1716

Android file.delete() 返回false的原因

在Android开发中,要删除文件,您需要获取以下权限之一或多个,取决于您要删除的文件的位置:请注意,自Android 11起,外部存储的访问权限受到了更严格的限制。如果您的目标设备是Android 11及更高版本,请使用权限时,同时考虑适应Scoped Storage(作用域存储)的要求。要在您的应用清单文件(AndroidManifest.xml)中声明权限,请在根据您的删除操作的位置选择适当的权限,并确保在运行时请求这些权限,以便您的应用在执行删除操作时具备必要的权限。

qq_55888300的博客 2911

QuickFix Java 实战(一)协议解析、环境搭建与首个应用

本文是QuickFix Java实战系列的第一篇,详细介绍了FIX协议的核心原理与QuickFix/J引擎的实战应用。内容涵盖FIX协议的标签化通信机制、QuickFix/J库的两种下载方法、协议定义文件解析,并通过一个完整的模拟订单发送示例,指导读者快速搭建首个FIX应用环境,实现消息生成与会话通信。

dog123的博客 496

Java中file.delete()删除文件失败的解决办法

仅使用该语句删除文件时,发现目录中的文件已然存在,而且控制台无报错,原因可能文件流未关闭导致。:在文件下载接口中未关闭文件流,一旦测试完下载接口后,file.delete()方法就失效,:如果你其他地方使用到文件流未关闭,你的file.delete()方法也可能会失效;:养成好的习惯,记得关闭文件流;

qq_51550150的博客 2436

基于紫光同创FPGA的adf网表文件使用和黑匣子设置

这个时候就可以选择将你的网表文件给到他使用,就是相当于把你的功能模块封装成了一个黑匣子一样,只有外部端口,没有内部代码;,在TOP层的子模块声明里面需要加上/*synthesis syn_black_box */进行黑匣子设置,此时子层 adf 文件作为黑盒是不会综合的,在 device map 时会将顶层综合结果与子层 adf 文件合并传递至布局布线阶段;这些都设置完毕后呢,就可以对工程进行编译和综合了,综合完毕后会生成一个.adf的网表文件,我们要使用的就是这个文件;我这里是把两个子模块的添加了哈;

H2061722的博客 966

保姆级教程:用vxe-grid给管理后台加个「智能筛选」功能(支持模糊搜索/多选/范围查询)

本文提供了一份详细的Vxe-Grid智能筛选功能实现教程。通过自定义筛选器渲染,文章逐步指导开发者为后台管理系统添加支持模糊搜索、多选下拉和数值范围查询的智能筛选功能,并分享了性能优化与移动端适配等实战经验。

weixin_29021291的博客 536

对 File.Delete 方法的一点看法

在我写的“推箱子”程序的 DataFile 类中有下面这么一个方法: /// /// 删除通关步骤文件 /// /// 关数 private void DeleteStepsFile(int level) { File.Delete(GetStepsFileName(fileName, level));

cxzhq2002的杂记 1489

【Qt】Qt5.15在线安装避坑指南:从代理配置到组件选择的完整实践

本文详细介绍了Qt5.15在线安装的全流程避坑指南,包括代理配置、组件选择和常见问题解决方案。通过使用Fiddler工具和国内镜像源,可显著提升下载速度。文章还提供了组件选择的黄金法则和安装后的验证步骤,帮助开发者高效完成Qt5.15的安装与配置。

weixin_42550052的博客 270

File- 用法之 delete 方法(原理递归)

【代码】File- 用法之 delete 方法(原理递归)

weixin_45958839的博客 433

解析 RABAX during SAPGUI Logon 错误及其解决方案

登录用户关联了初始启动程序,该程序由于未处理的异常导致运行时错误。在 ST22 查看错误的程序名和错误行。修复初始程序代码中的逻辑问题。重新部署修复后的代码。示例代码:防止未处理的异常TRY." 模拟逻辑处理ENDTRY.此代码通过 TRY-CATCH 块捕获潜在错误,避免程序崩溃。是 SAP 系统中常见的运行时错误,其根源可能涉及多个方面,包括用户配置、系统状态、数据库连接和自定义开发等。通过结合 ST22、SM21 等诊断工具,以及完善的代码实践和系统监控,可以有效预防和解决此类问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1782

海康Visionmaster-全局脚本:VM 加载方案后自动执行 的方法,如何让VM在方案加载后自动执行流程?

海康Visionmaster-全局脚本:VM 加载方案后自动执行 的方法,如何让VM在方案加载后自动执行流程?

视觉人机器视觉的博客 2038

Java使用File的的delete()方法删除文件

From: http://beginnersbook.com/2014/01/how-to-delete-file-in-java-delete-method/ /* 使用File的delete()方法删除文件 */ import java.io.*; public class Exercise { public static void main(String args[

huludan的专栏 3万+

论文必备 - YOLO26统计数据集中大、中、小目标数量,附完整代码和详细使用步骤

数据集是由微软开发维护的大型图像数据集。数据集标注类型对应任务包括物体检测、关键点检测、实例分割、stuff分割(没有特定形状的物体),全景分割人体关键点, 人体密度检测等。官网数据规模和样本特点数据规模大:总共包含32.8万张图像)。其中标注过的图像超过 20 万张,拥有 150 万个目标实例,数据量丰富,能够为模型训练提供充足的信息。类别丰富:包含80个目标类别和91个“stuff”类别。目标类别涵盖了日常生活中常见的各种物体,如人、动物、交通工具、生活用品等;stuff。

Limiiiing的博客 266

java delete()_Java File delete()用法及代码示例

delete()函数是Java中File类的一部分。此功能删除现有文件或目录。如果文件被删除,则该函数返回true,否则返回false函数签名:public boolean delete()用法:boolean var = file.delete();参数:此方法不接受任何参数。返回类型:该函数返回表示是否删除新文件的布尔数据类型。异常:此方法引发安全性异常:如果对文件的写访问被拒绝。以下示例程序...

weixin_42397516的博客 4001

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Java IO File中delete()和deleteOnExit()的区别

delete(): 直接删除 public boolean delete() { SecurityManager security = System.getSecurityManager(); if (security != null) { security.checkDelete(path); } if (isInvalid()) { return false; }

i余数的博客 952

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

java delete()_Java File delete()方法

Java File delete()方法java.io.File.delete()方法删除由抽象路径名定义的文件或目录。若要删除一个目录,该目录必须是空的。1 语法public boolean delete()2 参数无3 返回值如果文件已成功删除,则此方法返回true,否则返回false。4 示例package com.yiidian;/*** 一点教程网: http://www.yiidia...

weixin_42099302的博客 1410

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

file.delete()返回true,但是文件没有删除

背景 在程序中生成了一个临时文件,使用完毕后需要删除它,选择的是file.delete()方法,得到的返回值显示true,但是文件依然存在; 执行main()方法后 问题 1.检查删除前对文件使用的流都关闭了吗?结果都关闭了。 2.手动删除文件看能否成功,是不是被其他进程占用?结果可以手动删除。 3.断...

艾斯-李的博客 1万+

java中File的delete()方法删除文件失败的原因

一般来说 java file.delete失败 有以下几个原因 1.看看是否被别的进程引用,手工删除试试(删除不了就是被别的进程占用) 2.file是文件夹 并且不为空,有别的文件夹或文件, 3.极有可能有可能自己前面没有关闭此文件的流(我遇到的情况)这个方法我用来获取文件的大小,用到了流类,但是用完了没有关闭,导致无法删除文件: public String getfilesize(St

wuzhiweiwuzhiwei的专栏 5781

File中的delete()

一般来说 java file.delete失败 有以下几个原因: 1.看看是否被别的进程引用,手工删除试试。 2.file是文件夹 并且不为空,有别的文件夹或文件。 3.极有可能有可能自己前面没有关闭此文件的流 。   如: public static void unZipFromFile(File file){ try { ZipFile zipF...

lhx1026的专栏 992

java file delete忽略错误_Java Files delete()用法及代码示例

java.nio.file.Files的delete()方法可帮助我们删除位于作为参数传递的路径上的文件。对于其他文件系统操作,此方法可能不是原子的。如果文件是符号链接,则将删除符号链接本身而不是链接的最终目标。如果文件是目录,则此方法仅在目录为空时才删除该文件。在一些实现中,目录具有用于在创建目录时创建的特殊文件或链接的条目。在这样的实现中,当仅存在特殊条目时,目录被认为是空的。在这种情况下,可...

weixin_32568113的博客 3168

java file.delete()失效原因及修复

1、在工作中,有一些场景需要我们将一些文件下载到本地进行处理,一般放一个临时文件夹中,但是日积月累就会造成文件夹内存很庞大,所以我们需要在下载使用完成后再去删除文件,减小服务器的内存危机。所以使用到了file.delete()的方法,但是在使用时发现有时会失效,失效的原因一般如下: (1)、缓存中在使用文件时,delete失效,说明缓存有部分在使用,需要先清除缓存。 在delete方法前,加上如下 System.gc(); (2)、文件被占用,需要确定你这个文件是否被其他的线程在使用,只有等文件完全

weisian的博客 6618

why java file.delete() returns false?

javafile.delete() returnsfalsebut file.exists() returns true

爱吃小香葱的博客 708

file.delete()删除文件失败

** file.delete()删除文件失败 ** 问题原因:映射占用 解决方法:执行10次垃圾回收后删除,目前可以解决这个问题 public static boolean deleteFile(String path){ boolean result = false; File file=new File(path); if(file.isFile() && file.exists()){ int tryCount =

w75545521的博客 761

Java 中File类的createNewFile()与createTempFile(), delete和deleteOnExit区别

1. Java 中File类的createNewFile()与createTempFile()的区别 最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File.createNewFile() 方法,一时间不知道两者到底有什么区别,感觉都是创建新文件嘛,后来查看api文档介绍,并经过自己动手试验,终于有了一个较为清楚地认识。1. File 的 cr...

weixin_33834075的博客 993

java file delete忽略错误_file.delete()返回false,即使file.exists()

file.delete()返回false,即使file.exists(),file.canRead(),file.canWrite(),file.canExecute()都返回true我正在尝试删除文件,在写完文件后,用FileOutputStream。这是我用来编写的代码:privatevoidwriteContent(Filefile,StringfileContent){File...

weixin_34355348的博客 974

Java File类boolean delete()方法(带示例)

文件类布尔型delete() (File Class boolean delete()) This method is available in package java.io.File.delete(). 软件包java.io.File.delete()中提供了此方法。 This method is used to delete file or directory by using del...

cumt951045的博客 2204
上一篇: PAT (Basic Level) Practice--1002题目与解析(C++)
下一篇: 你所不知道的——tar的秘密
白小枫!
博客等级 码龄9年 7粉丝 10原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值