Files deleteIfExists() method in Java with Examples - GeeksforGeeks

30 Jul, 2019
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:
DirectoryNotEmptyException – if the file is a directory and could not otherwise be deleted because the directory is not emptyIOException – if an I/O error occursSecurityException – 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
DirectoryNotEmptyException – if the file is a directory and could not otherwise be deleted because the directory is not empty
IOException – if an I/O error occurs
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:
// 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();        }    }}
Before deleting the file: The file is present in the path “D:\\Work\\Test\\file1.txt”
Program 2:
// 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();        }    }}
References: https://docs.oracle.com/javase/10/docs/api/java/nio/file/Files.html#deleteIfExists(java.nio.file.Path)
Java-Files
Java-Functions
java.nio.file package
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Different ways of Reading a text file in Java
Constructors in Java
Exceptions in Java
Generics in Java
Functional Interfaces in Java
Comparator Interface in Java with Examples
HashMap get() Method in Java
Strings in Java
StringBuilder Class in Java with Examples