在Java中创建临时文件的安全方法是什么?
2022-08-31 07:30:46
我正在寻找一种在Java中创建临时文件的安全方法。通过安全,我的意思是以下内容:
- 名称应该是唯一的,即使在潜在的竞争条件下(例如,另一个 Thread 同时调用相同的 func,或者另一个进程同时运行此代码)
- 文件应该是私有的,即使在潜在的竞争条件下(例如,另一个用户尝试以高速率chmod文件)
- 我可以告诉它删除文件,而不必进行通用删除,并冒着删除错误文件的风险
- 理想情况下,应该确保文件被删除,即使在我有机会之前抛出异常
- 文件应默认为合理的位置(例如,JVM 指定的 tmp dir,默认为系统温度 dir)