今天在做文件上传后,写了一个删除文件的功能,遇到一个问题:
delete(); 和deleteOnExit();方法的区别
刚开始没看清以为deleteOnExit()是判断文件存在的话就删除,于是果断用了这个方法,测试时发现怎么也删除不了
后来查了API才发现两者区别:
delete() 删除此抽象路径名表示的文件或目录。
deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。
也就是说用第二个方法时,程序运行状态下是不会删除文件的,当程序终止后才会删除文件。