Tag: 临时文件

如何保证文件在一段时间后自动被删除?

用户上传之后,我必须将图像存储几分钟,直到用户确认并存储在数据库中 所以我想创建一个临时文件,并使用它来显示预览。 但是我必须确定,如果用户不再互动,文件会在一段时间后被删除 我发现这篇文章关于临时文件,以及如何自动删除它们https://softwarecave.org/2014/02/05/create-temporary-files-and-directories-using-java-nio2/ 但是,如果我理解正确,deleteOnExit和ShutdownHook将在vm关机后调用,所以如果我的应用程序长时间保持在线,谢谢,这些文件永远不会被删除,DELETE_ON_EXIT选项将删除文件,当我调用close方法,所以如果我从来没有打电话导致用户不做任何事,文件也永远不会被删除。 那就对了? 所以..有没有办法保证文件将被自动删除一段时间后被删除? 我想用deleteOnExit和DELETE_ON_CLOSE选项创建一个文件,并添加到“超时”的线程,并在此超时后检查文件是否仍然存在和删除,但我不知道是否存在最好的办法。 谢谢 UPDATE 基于最好的答案,我开发一个项目,把这个行为添加到Kotlin的java.util.File中。 https://github.com/vinicius-rob-cunha/kotlin-auto-delete-file