[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
**************