Files deleteIfExists() method in Java with Examples

The deleteIfExists() method of java.nio.file.Files help us to delete a file if the file exists at the path. we pass the path of the file as a parameter to this method. This method will return true if the file was deleted by this method; false if the file could not be deleted because it did not exist.

If the file is a symbolic link then the symbolic link itself, not the final target of the link, is deleted. If the file is a directory then this method will delete that file only when the directory is empty. In some implementations, a directory has entries for special files or links that are created when the directory is created. In such implementations, a directory is considered empty when only the special entries exist. In such cases, Directories can be delete using this method. On some operating systems it may not be possible to remove a file when it is open and in use by this Java virtual machine or other programs.

Syntax:



public static boolean deleteIfExists(Path path)
                   throws IOException

Parameters: This method accepts a parameter path which is the path to the file to deleted.

Return value: This method returns true if the file was deleted by this method; false if the file could not be deleted because it did not exist.

Exception: This method will throw following exceptions:

  1. DirectoryNotEmptyException – if the file is a directory and could not otherwise be deleted because the directory is not empty
  2. IOException – if an I/O error occurs
  3. SecurityException – In the case of the default provider, and a security manager is installed, the SecurityManager.checkdelete(String) method is invoked to check to delete access to the file

Below programs illustrate deleteIfExists(Path) method:
Program 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// java.nio.file.Files.deleteIfExists() method
  
import java.io.IOException;
import java.nio.file.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create object of Path
        Path path
            = Paths.get("D:\\Work\\Test\\file1.txt");
  
        // deleteIfExists File
        try {
  
            Files.deleteIfExists(path);
        }
        catch (IOException e) {
  
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

chevron_right


Output:

Before deleting the file: The file is present in the path “D:\\Work\\Test\\file1.txt”

After deleting the file: The file is deleteIfExistsd from the path “D:\\Work\\Test\\file1.txt”

Program 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// java.nio.file.Files.deleteIfExists() method
  
import java.io.IOException;
import java.nio.file.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create an object of Path
        Path pathOfFile
            = Paths.get("D:\\Work\\Test\\"
                        + "text1.txt");
  
        // delete both File if file exists
        try {
  
            boolean result
                = Files.deleteIfExists(pathOfFile);
  
            if (result)
                System.out.println("File is deleted");
            else
                System.out.println("File does not exists");
        }
        catch (IOException e) {
  
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

chevron_right


Output:

References: https://docs.oracle.com/javase/10/docs/api/java/nio/file/Files.html#deleteIfExists(java.nio.file.Path)



My Personal Notes arrow_drop_up

I am a Developer I love to code and bring my ideas alive

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.