[Java]Fileクラスで指定ファイルのパーミッションを調べる
構文
1.public boolean canRead()
この抽象パス名が示すファイルが存在し、さらにアプリケーションがそれを読み込める場合だけtrue、そうでない場合はfalse
2.public boolean canWrite()
ファイルに書き込める場合はtrue、そうでない場合はfalse。
3.public boolean canExecute()
アプリケーションがそのファイルを実行できる場合はtrue
使用例
package com.arkgame.bat;
import java.io.File;
public class FileAuth {
private static String DIR_PATH = "c:\\study\\arkgame\\";
public static void main(String[] args) {
// 読み取り専用
fileAuth("test_readonly.csv");
// 普通ファイル
fileAuth("test_normal.txt");
}
public static void fileAuth(String fileName) {
File file = new File(DIR_PATH + fileName);
System.out.println(fileName);
//ファイルが読み込みできるか
if (file.canRead()) {
System.out.println("読み込み:OK");
} else {
System.out.println("読み込み:NG");
}
//ファイルが書き込みできるか
if (file.canWrite()) {
System.out.println("書き込み:OK");
} else {
System.out.println("書き込み:NG");
}
//ファイルが実行できるか
if (file.canExecute()) {
System.out.println("実行:でOK");
} else {
System.out.println("実行:NG");
}
System.out.println("**************");
}
}
結果
test_readonly.csv
読み込み:OK
書き込み:NG
実行:でOK
**************
test_normal.txt
読み込み:OK
書き込み:OK
実行:でOK
**************