當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Java Java.io.FilePermission用法及代碼示例

java.io.FilePermission 類用於表示對文件或目錄的訪問。這些訪問采用路徑名和與路徑名關聯的一組操作的形式(指定要打開的文件以及擴展名和路徑)。例如,在 FilePermission(“GEEKS.txt”, “read”) 中,“GEEKS.txt” 是路徑,“read” 是正在執行的操作。這些行動如下:

  • read : 文件的讀取權限
  • write : 對文件的寫權限
  • delete : 通過調用File.delete刪除文件的權限
  • readlink : 讀取鏈接權限
  • execute : 執行了權限

宣言:

public final class FilePermission
   extends Permission
      implements Serializable

構造函數:

FilePermission(String p, String a) : Creates a new file permission object with "a" action.

FilePermission類的方法:

  • 等於(對象FP_obj):java.io.FilePermission.equals(對象FP_obj)告訴兩個(即使用該對象檢查 FP_obj 路徑名和文件名)FilePermission 對象是否相等。
  • Syntax :
public boolean equals(Object FP_obj)
Parameters : 
FP_obj : the FilePermission object to be verified with this object
返回:
true : if both the objects are equal else, false.
Exception : 
----------
  • 執行:

Java


// Java Program illustrating equals() method
import java.io.*;
public class NewClass
{
    public static void main(String[] args) throws IOException
    {
        boolean bool = false;
        // Creating new FilePermissions("Path", "action")
        FilePermission FP_obj1 = new FilePermission("GEEKS", "read");
        FilePermission FP_obj2 = new FilePermission("ABC", "write");
        FilePermission FP_obj3 = new FilePermission("GEEKS", "read");
        // Use of equals method 
        bool = FP_obj2.equals(FP_obj1);
        System.out.println("Whether FP_obj1 equals FP_obj2 : " + bool);
        bool = FP_obj2.equals(FP_obj3);
        System.out.println("Whether FP_obj2 equals FP_obj2 : " + bool);
        bool = FP_obj1.equals(FP_obj3);
        System.out.println("Whether FP_obj3 equals FP_obj1 : " + bool);
    }
}
  • 輸出:
Whether FP_obj1 equals FP_obj2 : false
Whether FP_obj2 equals FP_obj2 : false
Whether FP_obj3 equals FP_obj1 : true
  • getActions(): java.io.FilePermission.getActions()告訴這個FilePermission對象的動作。如果對象有兩個操作:刪除和讀取,則該方法將返回“讀取,刪除”。在這種情況下,此方法返回“canonical string”:讀、寫、執行、刪除、readlink
  • Syntax :
public String getActions()
Parameters : 
----------
返回:
canonical string : representing the actions associated with the object.
Exception : 
----------
  • Implementation :

Java


// Java Program illustrating getActions() method
import java.io.*;
public class NewClass
{
    public static void main(String[] args) throws IOException
    {
        // Creating new FilePermissions
        FilePermission FP_obj1 = new FilePermission("GEEKS", "read, delete, write");
        FilePermission FP_obj2 = new FilePermission("ABC", "write, read, execute");
        FilePermission FP_obj3 = new FilePermission("GEEKS", "delete, readlink, read");
        // Use of getActions() method 
        String str = FP_obj1.getActions();
        System.out.println("Actions with FP_obj1 : " + str);
        str = FP_obj2.getActions();
        System.out.println("Actions with FP_obj2 : " + str);
        str = FP_obj3.getActions();
        System.out.println("Actions with FP_obj3 : " + str);
    }
}
  • 輸出:
Actions with FP_obj1 : read,write,delete
Actions with FP_obj2 : read,write,execute
Actions with FP_obj3 : read,delete,readlink
  • hashCode(): java.io.FilePermission.hashCode()返回帶參數的 FilePermission 對象的哈希碼
  • Syntax :
public int hashCode()
Parameters : 
--------
返回:
hash code value for the argumented object
Exception : 
----------
  • 執行:

Java


// Java Program illustrating hashCode() method
import java.io.*;
public class NewClass
{
    public static void main(String[] args) throws IOException
    {
        // Creating new FilePermissions
        FilePermission FP_obj1=new FilePermission("GEEKS", "read, delete, write");
        // Use of hashCode() method
        int i = FP_obj1.hashCode();
        System.out.println("hashCode value for FP_obj1 : " + i);
    }
}
  • 輸出:
hashCode value for FP_obj1 : 0
  • 暗示(權限參數):java.io.FilePermission.implies(權限參數)告訴 FilePermision 是否具有爭論的權限。Syntax :
public boolean implies(Permission arg)
Parameters : 
arg : Permission to be checked 
返回:
true if the FilePermission object has the argumented Permission else, false
Exception : 
----------
  • Implementation :

Java


// Java Program illustrating implies() method
import java.io.*;
public class NewClass
{
    public static void main(String[] args) throws IOException
    {
        // Creating new FilePermissions
        FilePermission FP_obj1 = new FilePermission("GEEKS", "read");
        FilePermission FP_obj2 = new FilePermission("ABC", "write");
        FilePermission FP_obj3 = new FilePermission("GEEKS", "delete");
        // Use of implies() method
        boolean check = FP_obj1.implies(FP_obj2);
        System.out.println("Using implies() for FP_obj1 : " + check);
                 
        // Checked here with the same FilePermission object
        check = FP_obj2.implies(FP_obj2);
        System.out.println("Using implies() for FP_obj2 : " + check);
         
    }
}
  • 輸出:
Using implies() for FP_obj1 : false
Using implies() for FP_obj2 : true
  • newPermissionCollection():java.io.FilePermission.newPermissionCollection()創建具有FilePermission 對象的PermissionCollection 對象。Syntax :
public PermissionCollection newPermissionCollection()
Parameters : 
arg : Permission to be checked 
返回:
new PermissionCollection object having the FilePermission objects.
Exception : 
----------
  • Implementation :

Java


// Java Program illustrating newPermissionCollection() method
import java.io.*;
import java.security.PermissionCollection;
public class NewClass
{
    public static void main(String[] args) throws IOException
    {
        // Creating new FilePermissions
        FilePermission FP_obj1 = new FilePermission("GEEKS.txt", "read");
         
        // Creating new PermissionCollection
        // Use of newPermissionCollection() 
        PermissionCollection FP = FP_obj1.newPermissionCollection();
         
        // Collecting the Permissions of FP_obj1 for FP
        FP.add(FP_obj1);
         
        boolean check = FP.implies(new FilePermission("GEEKS.txt", "read"));
        System.out.println("Is newPermissionCollection() working : " + check);
    }
}
  • 輸出:
Is newPermissionCollection() working : true


相關用法


注:本文由純淨天空篩選整理自佚名大神的英文原創作品 Java.io.FilePermission Class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。