Java教程-Java FilePermission类

Java FilePermission类
Java FilePermission类包含与目录或文件相关的权限。所有权限都与路径相关。路径可以有两种类型:
- D:IO-:表示权限递归地与所有子目录和文件关联。
- D:IO*:表示权限与该目录中的所有目录和文件关联,但不包括子目录。
Java FilePermission类声明
让我们看一下Java.io.FilePermission类的声明:
public final class FilePermission extends Permission implements Serializable
FilePermission类的方法
Method | Description |
---|---|
ByteArrayOutputStream() | 创建一个初始容量为 32 字节的新字节数组输出流,但它的大小会在必要时增加。 |
ByteArrayOutputStream(int size) | 创建一个新的字节数组输出流,具有指定大小的缓冲区容量,以字节为单位。 |
Java FilePermission类方法
Method | Description |
---|---|
int hashCode() | 它用于返回对象的哈希码值。 |
String getActions() | 它用于返回动作的“规范字符串表示”。 |
boolean equals(Object obj) | 它用于检查两个 FilePermission 对象是否相等。 |
boolean implies(Permission p) | 它用于检查 FilePermission 对象的指定权限。 |
PermissionCollection newPermissionCollection() | 它用于返回用于存储 FilePermission 对象的新 PermissonCollection 对象。 |
Java FilePermission示例
让我们看一个简单的示例,其中授予了一个目录路径的读取权限,并为该目录的一个文件授予写入权限。
package com.javatpoint;
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