File.createTempFile创建临时文件
File.createNewFile和 File.createTempFile比较和区别:
File 的 createNewFile() 方法: createNewFile();返回值为 boolean; File file = new File(“D:\test\1.txt”); boolean res = file.createNewFile(); if(!res)System.out.println(“创建失败!”);
如果D:/test 目录下没有 1.txt文件,则创建该文件;
如果没有test目录,直接抛出异常;
如果1.txt已经存在,那么文件创建失败。
可以得知,createNewFile() 方法,根据抽象路径创建一个新的空文件,当抽象路径指定的文件存在时,创建失败。
File 的 createTempFile() 方法:
该方法有两种调用方式:
在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。
createTempFile(String prefix, String suffix);
方法默认的保存路径为:C:\Documents and Settings\Administrator\Local Settings\Temp 。
在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。 createTempFile(String prefix, String suffix, File directory);
createTempFile() 方法,在指定的目录下创建一个temp文件,directory 类型为File ,如果路径不存在,则创建失败。
3.删除方法
//立即删除文件
file.delete();
//在JVM退出时删除文件
file.deleteOnExit();
总结:临时文件能够使用默认路径,可以避免存在创建文件是因为路径错误导致创建文件失败的问题。 如果需求中需要创建一个临时文件,这个临时文件可能作为存储使用,但在程序运行结束后需要删除文件,可以使用deleteOnExit方法