java如何设置文件的权限

发布网友 发布时间:2022-04-25 16:01

我来回答

2个回答

热心网友 时间:2023-10-15 14:16

在Java中,文件权限是非常具体的操作系统:* nix中,NTFS(Windows)及FAT/FAT32,都有着别样的文件权限。 Java提供了一些通用的文件权限来处理它。

检查文件权限允许:
1.file.canExecute(); – 返回true,文件是可执行的,false 则不是。
2.file.canWrite(); – 返回true,文件是可写的,false 则不是。
3.file.canRead(); – 返回true,文件是可读的,false 则不是。
设置文件权限:
1.file.setExecutable(boolean); – true允许执行操作; false则是禁止它。
2.file.setReadable(boolean); – true允许读操作; false则是禁止它。
3.file.setWritable(boolean); – true允许写操作; false则是禁止它。
在* nix的系统中,可能需要配置有关文件权限的详细指定,例如设置777权限的文件或目录,但是,Java的IO类没有现成的方法,但你可以使用下面的解决方法:
Runtime.getRuntime().exec("chmod 777 file");文件权限的例子
import java.io.File;
import java.io.IOException;

×只能给当前用户赋予对该文件的权限,调用createNewFile()方法默认的权限是4.
×/
public class FilePermission
{
public static void main( String[] args )
{
try {
File file = new File("/home/test3.txt");
if (file.createNewFile()){
System.out.println("File is created!");
//Runtime.getRuntime().exec("chmod 777 /home/test3.txt");
file.setExecutable(true);//设置可执行权限
file.setReadable(true);//设置可读权限
file.setWritable(true);//设置可写权限
System.out.println("is execute allow : " + file.canExecute());
System.out.println("is read allow : " + file.canRead());
System.out.println("is write allow : " + file.canWrite());
}else{
System.out.println("File already exists.");
}

} catch (IOException e) {
e.printStackTrace();
}

}

热心网友 时间:2023-10-15 14:16

import java.io.IOException;/××只能给当前用户赋予对该文件的权限,调用createNewFile()方法默认的权限是4.×/public class FilePermission{public static void main( String[] args ){try {File file = new File("/home/test3.txt");if (file.createNewFile()){System.out.println("File is created!");//Runtime.getRuntime().exec("chmod 777 /home/test3.txt");file.setExecutable(true);//设置可执行权限file.setReadable(true);//设置可读权限file.setWritable(true);//设置可写权限System.out.println("is execute allow : " + file.canExecute());System.out.println("is read allow : " + file.canRead());System.out.println("is write allow : " + file.canWrite());}else{System.out.println("File already exists.");}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com