What is a safe way to create a Temp file in Java?

前端 未结 3 855
挽巷
挽巷 2020-12-23 15:44

I\'m looking for a safe way to create a temp file in Java. By safe, I mean the following:

  • Name should be unique, even under potential race co
相关标签:
3条回答
  • 2020-12-23 16:16

    Use File.createTempFile().

    File tempFile = File.createTempFile("prefix-", "-suffix");
    //File tempFile = File.createTempFile("MyAppName-", ".tmp");
    tempFile.deleteOnExit();
    

    Will create a file in the temp dir, like:

    prefix-6340763779352094442-suffix

    0 讨论(0)
  • 2020-12-23 16:25

    Since Java 7 there is the new file API "NIO2" which contains new methods for creating temnp files and directories. See

    • createTempDirectory
    • createTempDirectory
    • createTempFile
    • createTempFile

    e.g.

    Path tempDir = Files.createTempDirectory("tempfiles");
    

    or

    Path tempFile = Files.createTempFile("tempfiles", ".tmp");
    
    0 讨论(0)
  • 2020-12-23 16:28
    String tempfilePath = System.getProperty("java.io.tmpdir");
    tempfilePath = tempfilePath.concat("filename.extension");
    

    doesn't require prefix.

    0 讨论(0)
提交回复
热议问题