java删除文件时总是返回false,删不掉「建议收藏」

java删除文件时总是返回false,删不掉「建议收藏」今天写了个简单的文件删除的程序:代码如下:publicstaticbooleandeleteFiles(File[]files){ booleanflag=false; for(Filefile:files){ //路径为文件且不为空则进行删除 if(file.isFile()&&file.exists()){ flag

大家好,又见面了,我是你们的朋友全栈君。

今天写了个简单的文件删除的程序:代码如下:

public static boolean deleteFiles(File[] files){
		boolean flag = false;
		for(File file:files){
			// 路径为文件且不为空则进行删除  
		    if (file.isFile() && file.exists()) { 
		    	flag = file.delete();
 		    	System.out.println(flag);
		    }
		}
		return flag;
	}

我的文件都是存在的,但是就是经常性的删不了,不知道怎么回事,我单独测试的时候是可以的,感觉很是奇怪,上网查,人家说是可能的情况有:

1、多线程操作;2打开的文件流没有关闭;3、需要垃圾回收下。

分析下我的情况,我的是单线程的,所以第一种情况不存在,第二种情况我关闭我所有打开的文件流但是还是不行,后来我在程序中加了行System.gc();,结果就真的可以了,一下是修改后的:

public static boolean deleteFiles(File[] files){
		boolean flag = false;
		for(File file:files){
			// 路径为文件且不为空则进行删除  
		    if (file.isFile() && file.exists()) {  
		    	System.gc();	//加上确保文件能删除,不然可能删不掉
		    	flag = file.delete();
		    	System.out.println(flag);
		    }
		}
		return flag;
	}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133006.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 你想要的Http和Https知识这里都有[通俗易懂]

    你想要的Http和Https知识这里都有[通俗易懂]你真的了解HTTP和HTTPS吗?HTTPS=SSL+HTTP,面试必问。

    2022年10月16日
  • 什么是devops思想在运维方面的具体实践_devops四个维度

    什么是devops思想在运维方面的具体实践_devops四个维度DevOps是最近非常火的一个概念,谈IT流程建设不说点DevOps都不好意思和人打招呼。但是DevOps究竟是个什么东西,这个东西能不能用?怎么用?什么样的情况才叫做DevOps落地成功?对于这些问题的答案,虽然网上有铺天盖地的文章和教程,但是一般来说都是从理论或者方法论上去阐述,也有大厂的实施经历。个人就感觉这里的它山之石,很难攻玉了。最终还是得思考下DevOps的由来,综合自己所在企业的现实…

  • console.log()的作用是什么

    console.log()的作用是什么

    2021年10月11日
  • 【数据结构】字典树TrieTree图文详解

    【数据结构】字典树TrieTree图文详解问题引入现在,我给你n个单词,然后进行q次询问,每一次询问一个单词b,问你b是否出现在n个单词中,你会如何去求呢?暴力搜索?但是我们如果这么做的话时间复杂度一下就高上去了。大家都是成熟的ACMer了,不要再惦记着暴力的方法啦,要优雅。你想想,问题的描述像不像查字典的操作?你平时是怎么查字典的?想想看?如果你要在字典中查找单词“Avalon”,你是不是先找到首字母为‘A’的部分,然后再找第二个单词为‘V’的部分······最后,你可能可以找到这个单词,当然,也有可能这本词典并没有这个单词。你想想看,

  • hdu1024—最大m段不重合子序列和:策略优化

    hdu1024—最大m段不重合子序列和:策略优化

  • oracle建表语句例子_oracle建表语句例子带注释

    oracle建表语句例子_oracle建表语句例子带注释Oracle建表语句createtabletable_name( idnumner(12), textverchar2(255CHAR)notnull,statusnumber(1)DEFAULT0null–添加默认值如果为空默认值就为0)–添加主键ALTERTABLE"W…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号