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;
	}

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

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

(0)
上一篇 2022年6月9日 下午10:36
下一篇 2022年6月9日 下午10:46


相关推荐

  • linux系统组成及结构[通俗易懂]

    linux系统组成及结构[通俗易懂]Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。1.linux内核内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。Lin…

    2022年7月15日
    28
  • php 7.1 openssl_decrypt() 代替 mcrypt_module_open() 方法

    php 7.1 openssl_decrypt() 代替 mcrypt_module_open() 方法

    2021年11月8日
    60
  • linux ettercap,linux下面ettercap的安装(双向arp欺骗)

    linux ettercap,linux下面ettercap的安装(双向arp欺骗)arpspoof真是老掉牙了,有以下三个缺点:1。不支持双向欺骗,要实现,只能启动两个进程。2。不支持多个ip,要不就是整个网段(除非也启动多个进程)3。不支持mac地址伪造。还是用ettercap吧,这个东西,介绍的资料都是windows下面的多。我的被控端是linux下呀,而目标是windows。没有办法,硬着头皮装吧:1..libnet-1.1.2.1.tar.gz2.libpcap-1.0…

    2022年6月28日
    32
  • Sybase bcp命令详解

    Sybase bcp命令详解bcp 命令详解 bcp nbsp 实用工具在 nbsp Microsoft nbsp SQL nbsp Server nbsp 2000 nbsp 实例和数据文件之间以用户指定的格式复制数据 语法 bcp nbsp database name owner table name nbsp nbsp view name nbsp nbsp query nbsp nbsp nbsp nbsp nbsp nbsp in nbsp nbsp out nbsp nbsp queryout nbsp nbsp format nbsp data file

    2026年3月18日
    2
  • jar和war的区别

    jar和war的区别Jar、war在文件结构上,二者并没有什么不同,它们都采用zip或jar档案文件压缩格式。但是它们的使用目的有所区别:jar1.Jar文件(扩展名为.Jar,JavaApplicationArchive)包含Java类的普通库、资源(resources)、辅助文件(auxiliaryfiles)等。2.jar包是java打的包,一般只是包括一些编译后class文件和一些部署文件,在声…

    2022年5月24日
    44
  • 从0到1构建第一个n8n工作流

    从0到1构建第一个n8n工作流

    2026年3月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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