Java教程

Java FilePermission

Java FilePermission类包含与目录或文件相关的权限。所有权限都与路径相关。路径可以有两种类型:
1) D: \\ IO \\ -: 表示该权限与所有子目录和文件都递归关联。
2) D: \\ IO \\ * : 表明该权限与该目录中的所有目录和文件(子目录除外)相关联。

Java FilePermission类声明

让我们看看Java.io.FilePermission类的声明:
public final class FilePermission extends Permission implements Serializable

FilePermission类的方法

方法 说明
ByteArrayOutputStream() 创建一个新的array字节的输出流,其初始容量为32字节,不过必要时其大小也会增加。
ByteArrayOutputStream(int size) 创建一个新的字节数组输出流,具有指定大小的缓冲区容量(以字节为单位)。

Java FilePermission类方法

方法 说明
int hashCode() 它用于返回对象的哈希码值。
String getActions() 它用于返回动作的"规范字符串表示形式"。
boolean equals(Object obj) 它用于检查两个FilePermission对象是否相等。
boolean implies(Permission p) 它用于检查FilePermission对象是否具有指定的权限。
PermissionCollection newPermissionCollection() 用于返回新的PermissonCollection对象以存储FilePermission对象。

Java FilePermission示例

让我们看一个简单的示例,在该示例中,将目录路径的权限授予读取权限,并且将该目录的文件授予授予写权限。
package com.lidihuo;
import java.io.*;
import java.security.PermissionCollection;
public class FilePermissionExample{
    public static void main(String[] args) throws IOException {
        String srg = "D:\\IO Package\\java.txt";
        FilePermission file1 = new FilePermission("D:\\IO Package\\-", "read");
        PermissionCollection permission = file1.newPermissionCollection();
        permission.add(file1);
        FilePermission file2 = new FilePermission(srg, "write");
        permission.add(file2);
        if(permission.implies(new FilePermission(srg, "read,write"))) {
            System.out.println("Read, Write permission is granted for the path "+srg );
        }
        else {
            System.out.println("No Read, Write permission is granted for the path "+srg);
        }
    }
}
输出
Read, Write permission is granted for the path D:\IO Package\java.txt
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4