📜  在Java中创建临时文件

📅  最后修改于: 2022-05-13 01:55:42.521000             🧑  作者: Mango

在Java中创建临时文件

在Java中,我们可以使用称为File.createTempFile()方法的现有方法创建一个临时文件,该方法在指定目录上创建一个新的空文件。 createTempFile()函数在给定目录中创建一个临时文件(如果未提及该目录,则选择默认目录),该函数使用作为参数传递的前缀和后缀生成文件名。如果后缀为空,则该函数使用“.tmp”作为后缀。该函数然后返回创建的文件

场景:我们可以在两种场景中创建临时文件。

  1. createTempFile(前缀,后缀,目录)
  2. createTempFile(前缀,后缀,空)

方法 - 场景 1

此方法在指定目录中创建一个新的空文件,使用给定的前缀和后缀生成其名称。

句法:

public static File createTempFile(String prefix,String suffix,File directory)  

参数:它需要 3 个参数 - 前缀、后缀和目录。

  1. 前缀:前缀字符串用于生成文件名,长度至少为三个字符。
  2. 后缀:后缀字符串用于生成文件名。可以是'.txt'或'null'。如果是'null',将使用“.tmp”。
  3. Directory:要在其中创建文件的目录,如果要使用默认的临时文件目录,则为 null。

返回类型:表示新创建的空文件的抽象路径名

例外:

  • IllegalArgumentExpression:如果前缀参数包含少于三个字符。
  • IOException: 如果无法创建文件。
  • SecurityException:如果存在安全管理器并且其 SecurityManager 和checkWrite()方法不允许创建文件。

方法——场景 2

此方法在默认临时文件目录中创建一个新的空文件,使用给定的前缀和后缀生成其名称。调用此方法等效于调用createTempFile(prefix,suffix,null)

句法:

public static File createTempFile(String prefix,String suffix)

参数:它只需要两个参数-前缀和后缀

  1. Prefix:前缀字符串用于生成文件名,长度至少为三个字符
  2. 后缀: 后缀字符串用于生成文件名。可以是'.txt'或'null'。如果是'null',将使用“.tmp”

返回类型:表示新创建的空文件的抽象路径名

例外:

  1. 非法参数表达式: 如果前缀参数包含少于三个字符。
  2. IOException: 如果无法创建文件。
  3. SecurityException:如果存在安全管理器并且其 SecurityManager 和checkWrite()方法不允许创建文件。

例子

Java
// Java Program to Create a Temporary File in Java
  
// Importing all input output classes
import java.io.File;
import java.io.IOException;
  
//  Class
public class GFG {
  
    // Main driver method
    public static void main(String[] args)
        throws IOException
    {
  
        // Try block to check for exceptions
        try {
  
            // Step 1
            // Creating temporary file with default location
            // by creating an object of File type
            File obj1 = File.createTempFile("temp", ".txt");
  
            // Step 2
            // Obtaining absolute path of the path
            // returned by createTempfile() function
            String path = obj1.getAbsolutePath();
  
            // Step 3
            // Print and display the default path of
            // temporary file
            System.out.println(
                "Path of temporary file with default loaction:"
                + path);
  
            // Step 4
            // Creating temporary file with specified
            // location again by creating another object of
            // File type which is custom local directory
            File obj2 = File.createTempFile(
                "temp", ".txt",
                new File(
                    "C:/Users/ASPIRE/Desktop/my folder"));
  
            // Step 5
            // Obtaining absolute path of the path
            // returned by createTempfile() function
            path = obj2.getAbsolutePath();
  
            // Step 6
            // Print and display the specified path of
            // temporary file
            System.out.println(
                "Path of temporary file with specified location:"
                + path);
        }
  
        // Catch block to handle exception if occurs
        catch (IOException e) {
  
            // Print the line number where exception occur
            // using printStackTrace() method
            e.printStackTrace();
        }
    }
}


输出:

下面的快照也附加在本地计算机的这些目录中,如下所示:

在给定路径创建临时文件的情况

在默认路径创建临时文件的情况