Java - File deleteOnExit() Method



Description

The Java File deleteOnExit() method deletes the file or directory defined by the abstract path name when the virtual machine terminates. Files or directories are deleted in the reverse order as they are registered.

Declaration

Following is the declaration for java.io.File.deleteOnExit() method −

public void deleteOnExit()

Parameters

NA

Return Value

The method does not return any value.

Exception

SecurityException − If SecurityManager.checkWrite(java.lang.String) method denies delete access to the file.

Example 1

The following example shows the usage of Java File deleteOnExit() method. We've created a File reference. Using createTempFile() method, we're creating the file in temporary directory and printing the absolute path of the file created. We're calling deleteOnExit() method to delete the file once virtual machine terminates.

package com.tutorialspoint;
import java.io.File;
public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
            
      try {
         // creates temporary file
         f = File.createTempFile("tmp", ".txt");
         
         // prints absolute path
         System.out.println("File path: "+f.getAbsolutePath());
         
         // deletes file when the virtual machine terminate
         f.deleteOnExit();         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

File path: /tmp/tmp861034796011957714.txt

You can check at the relevant path, if file is deleted or not once program terminates. The temporary file will not be present.

Example 2

The following example shows the usage of Java File deleteOnExit() method. We've created a File reference. Using createTempFile() method, we're creating the file in temporary directory and printing the absolute path of the file created. We're calling deleteOnExit() method to delete the file once virtual machine terminates.

package com.tutorialspoint;
import java.io.File;
public class FileDemo {
   public static void main(String[] args) {      
      File f = null;
            
      try {
         // creates temporary file
         f = File.createTempFile("tmp", null);
         
         // prints absolute path
         System.out.println("File path: "+f.getAbsolutePath());
         
         // deletes file when the virtual machine terminate
         f.deleteOnExit();         
      } catch(Exception e) {
         // if any error occurs
         e.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

File path: /tmp/tmp9737469160324392685.tmp

You can check at the relevant path, if file is deleted or not once program terminates. The temporary file will not be present.

java_file_class.htm
Advertisements