java.nio.file.Files的deleteIfExists()方法可幫助我們刪除文件(如果該文件位於路徑中)。我們將文件的路徑作為參數傳遞給此方法。如果文件被該方法刪除,則此方法將返回true;否則,此方法將返回true。如果由於文件不存在而無法刪除該文件,則返回false。
如果文件是符號鏈接,則將刪除符號鏈接本身而不是鏈接的最終目標。如果文件是目錄,則此方法僅在目錄為空時才刪除該文件。在一些實現中,目錄具有用於在創建目錄時創建的特殊文件或鏈接的條目。在這樣的實現中,當僅存在特殊條目時,目錄被認為是空的。在這種情況下,可以使用此方法刪除目錄。在某些操作係統上,當此Java虛擬機或其他程序打開並使用文件時,可能無法刪除該文件。
用法:
public static boolean deleteIfExists(Path path) throws IOException
參數:此方法接受參數路徑,該路徑是要刪除的文件的路徑。
返回值:如果文件已被該方法刪除,則此方法返回true;否則,此方法返回true。如果由於文件不存在而無法刪除該文件,則返回false。
異常:此方法將引發以下異常:
- DirectoryNotEmptyException–如果文件是目錄,並且由於目錄不為空而無法刪除
- IOException–如果發生I /O錯誤
- SecurityException–對於默認提供程序,並安裝了安全管理器,將調用SecurityManager.checkdelete(String)方法以檢查刪除對文件的訪問
以下示例程序旨在說明deleteIfExists(Path)方法:
示例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();
}
}
}
輸出:
刪除文件之前:該文件位於路徑“D:\\Work\\Test\\file1.txt”中
刪除文件後:該文件是從路徑“D:\\Work\\Test\\file1.txt”中的deleteIfExistsd刪除的
示例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();
}
}
}
輸出:
相關用法
- Java Files isHidden()用法及代碼示例
- Java Files isReadable()用法及代碼示例
- Java Files delete()用法及代碼示例
- Java Files isWritable()用法及代碼示例
- Java Files getFileStore()用法及代碼示例
- Java Files isExecutable()用法及代碼示例
- Java Files size()用法及代碼示例
注:本文由純淨天空篩選整理自AmanSingh2210大神的英文原創作品 Files deleteIfExists() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。