java.nio.file.Files的isExecutable()方法可幫助我們檢查文件是否可執行。此方法檢查該路徑上是否存在文件,如果存在,則Java虛擬機具有執行該文件的適當特權。當檢查對目錄的訪問時,語義可能會有所不同。
例如,在UNIX係統上,檢查執行訪問權限會檢查Java虛擬機是否有權搜索目錄以訪問文件或子目錄。因此,可以說isExecutable()方法在文件存在且可執行的情況下返回true,或者在以下情況下返回false:
- 文件不存在
- 由於Java虛擬機的權限不足,執行訪問將被拒絕,
無法確定訪問權限。
用法:
public static boolean isExecutable(Path path)
參數:此方法接受參數路徑,該路徑是要檢查的文件的路徑。
返回值:如果文件存在並且可以執行,則此方法返回true,或者在以下情況下返回false:
- 文件不存在
- 由於Java虛擬機的權限不足,執行訪問將被拒絕,
無法確定訪問權限。
異常:在默認提供程序的情況下,此方法將拋出SecurityException,並安裝了安全管理器,並調用checkExec來檢查對該文件的執行訪問權限。
walkFileTree。
以下示例程序旨在說明isExecutable(Path)方法:
示例1:
// Java program to demonstrate
// Files.isExecutable() method
import java.io.IOException;
import java.nio.file.*;
public class GFG {
public static void main(String[] args)
{
// create an object of Path
Path path
= Paths.get(
"D:\\GIT_EWS_PROJECTS\\logger"
+ "\\src\\logger"
+ "\\GFG.java");
// check whether this file
// is executable or not
boolean result
= Files.isExecutable(path);
System.out.println("File " + path
+ " is Executable = "
+ result);
}
}
輸出:
示例2:
// Java program to demonstrate
// Files.isExecutable() method
import java.io.IOException;
import java.nio.file.*;
public class GFG {
public static void main(String[] args)
{
// create object of Path for a file
// which did not exists.
Path path
= Paths.get(
"D:\\User Aman\\Documents"
+ "\\MobaXterm\\home"
+ "\\.ssh\\hostkeys\\file1.txt");
// check whether this file
// is executable or not
boolean result
= Files.isExecutable(path);
// as the file does not exist
// then answer should be false
System.out.println("File " + path
+ " is Executable = "
+ result);
}
}
輸出:
參考文獻: https://docs.oracle.com/javase/10/docs/api/java/nio/file/Files.html#isExecutable(java.nio.file.Path)
相關用法
- Java Files delete()用法及代碼示例
- Java Files deleteIfExists()用法及代碼示例
- Java Files isWritable()用法及代碼示例
- Java Files isReadable()用法及代碼示例
- Java Files isHidden()用法及代碼示例
- Java Files size()用法及代碼示例
- Java Files getFileStore()用法及代碼示例
注:本文由純淨天空篩選整理自AmanSingh2210大神的英文原創作品 Files isExecutable() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。