Temporary files in Java

JavaObject Oriented ProgrammingProgramming

In certain scenarios such as unit testing, or for some application logics you might need to create temporary files.

Creating a temporary file

The File class in Java provides a method with name createTempFile(). This method accepts two String variables representing the prefix (starting name) and suffix(extension) of the temp file and a File object representing the directory (abstract path) at which you need to create the file.

Example

Following Java example creates a temporary file named exampleTempFile5387153267019244721.txt in the path D:/SampleDirectory

import java.io.File;
import java.io.IOException;
public class TempararyFiles {
   public static void main(String args[]) throws IOException {
      String prefix = "exampleTempFile";
      String suffix = ".txt";
      //Creating a File object for directory
      File directoryPath = new File("D:/SampleDirectory");
      //Creating a temp file
      File.createTempFile(prefix, suffix, directoryPath);
      System.out.println("Temp file created.........");
   }
}

Output

Temp file created.........

Deleting a temporary file

The File class provides a delete() method which deletes the current file or directory, invoke this method on the temporary file.

Example

The following Java program creates and deletes a temp file.

import java.io.File;
import java.io.IOException;
public class TempararyFiles {
   public static void main(String args[]) throws IOException {
      String prefix = "exampleTempFile";
      String suffix = ".txt";
      //Creating a File object for directory
      File directoryPath = new File("D:/SampleDirectory");
      //Creating a temp file
      File tempFile = File.createTempFile(prefix, suffix, directoryPath);
      System.out.println("Temp file created: "+tempFile.getAbsolutePath());
      //Deleting the file
      tempFile.delete();
      System.out.println("Temp file deleted.........");
   }
}

Output

Temp file created: D:\SampleDirectory\exampleTempFile7179732984227266899.txt
Temp file deleted.........
raja
Published on 15-Oct-2019 11:32:55
Advertisements