java file deleteOnExit()方法踩坑记

阅读: 评论:0

java file deleteOnExit()方法踩坑记

java file deleteOnExit()方法踩坑记

背景

  从视频存储中心下载视频保存到本地。发现执行过程确实能看到本地视频的产生,一旦程序执行完,该视频又被删除了。

code 如下 :

@Testpublic void testDownloadVideo()  throws IOException {String url = "xxx/t.mp4";File file = new File("/Users/pengwei.xpw/test.mp4");file.deleteOnExit();if (!ists()) {ateNewFile();}OutputStream out = new FileOutputStream(file);HttpClientParams httpClientParams = new HttpClientParams();httpClientParams.setSoTimeout(2000);httpClientParams.setConnectionManagerTimeout(2000);HttpResponse(url, out, httpClientParams);out.flush();out.close();}

怀疑deleteOnExit是不是在作怪,谷歌了下,得到了官方解释

Java file delete 和 deleteOnExit 区别

  • delete : 删除文件。一旦调用,程序立即执行删除操作
  • deleteOnExit :顾名思义 : 存在则删除。你以为这么简单?不要被别面迷惑了, 它被调用时,相当于对deleteOnExit做了一个生声明, 不会马上执行删除操作, 而是程序运行结束, JVM终止时才真正调用删除操作。即该方法是将删除的命令缓存了一下,到服务停止的时候再进行操作!

  恍然大悟,于是deleteOnExit换成即可。这样程序在执行完时,不会去删除生成的视频。

本文发布于:2024-01-29 11:11:35,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170649789814863.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:方法   file   java   踩坑记   deleteOnExit
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23