Java:简述Java.io.File中的文件删除方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29229567/article/details/85061332

Java:简述Java.io.File中的文件删除方法

Java的Java.io.File类中提供如下两种删除文件的方式:

1.delete()方法
      当调用delete()方法时,直接删除文件,不管该文件是否存在,一经调用立即执行;

2.deleteOnExit()方法
      当调用deleteOnExit()方法时,只是相当于对deleteOnExit()作一个声明,当程序运行结束,JVM终止时才真正调用deleteOnExit()方法实现删除操作。即该方法是将删除的命令缓存了一下,到服务停止的时候再进行操作!

参考代码如下
A.先调用deleteOnExit(),后调用createNewFile()

@Test
public void test() throws IOException {
	File file=new File("E:"+File.separator+"filetest"+File.separatorChar+"Test.txt");
	if(file.exists()){
		file.deleteOnExit();
		file.createNewFile();
	} else{
		System.out.println("不存在该文件");
	}
}

结果:在相应的位置HelloFile.txt 不存在(被删除掉了)。
解释:因为此处的deleteOnExit()是在JVM退出的时候才执行的,因此相当于是先调用了createNewFile()再调用deleteOnExit()。

B.先调用delete(),后调用createNewFile()

@Test
public void test() throws IOException {
	File file=new File("E:"+File.separator+"filetest"+File.separatorChar+"Test.txt");
	if(file.exists()){
		file.delete();
		file.createNewFile();
	} else{
		System.out.println("不存在该文件");
	}
}

结果:在相应的位置HelloFile.txt 存在。
解释:因为此处是先调用了delete()方法再调用createNewFile()。

猜你喜欢

转载自blog.csdn.net/qq_29229567/article/details/85061332