zoukankan      html  css  js  c++  java
  • java 7修改文件权限

    Full control over file attributes is available in Java 7, as part of the "new" New IO facility (NIO.2). For example, POSIX permissions can be set with setPosixFilePermissions().

    import java.io.File;
    import java.io.IOException;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    import java.nio.file.attribute.PosixFilePermission;
    import java.util.HashSet;
    import java.util.Set;
    
    public class FilePermissions {
    
        /**
         * File Permissions Java Example using File and PosixFilePermission
         * @param args
         * @throws IOException 
         */
        public static void main(String[] args) throws IOException {
            File file = new File("/Users/pankaj/temp.txt");
            
            //set application user permissions to 455
            file.setExecutable(false);
            file.setReadable(false);
            file.setWritable(true);
            
            //change permission to 777 for all the users
            //no option for group and others
            file.setExecutable(true, false);
            file.setReadable(true, false);
            file.setWritable(true, false);
            
            //using PosixFilePermission to set file permissions 777
            Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
            //add owners permission
            perms.add(PosixFilePermission.OWNER_READ);
            perms.add(PosixFilePermission.OWNER_WRITE);
            perms.add(PosixFilePermission.OWNER_EXECUTE);
            //add group permissions
            perms.add(PosixFilePermission.GROUP_READ);
            perms.add(PosixFilePermission.GROUP_WRITE);
            perms.add(PosixFilePermission.GROUP_EXECUTE);
            //add others permissions
            perms.add(PosixFilePermission.OTHERS_READ);
            perms.add(PosixFilePermission.OTHERS_WRITE);
            perms.add(PosixFilePermission.OTHERS_EXECUTE);
            
            Files.setPosixFilePermissions(Paths.get("/Users/pankaj/run.sh"), perms);
        }
    
    }
    

    From above example, it’s clear that PosixFilePermission provides more options and code is more readable. If you are using Java 7, you should use it for setting file permissions in java.

  • 相关阅读:
    每日学习
    解决MySQL下把结果导出到文件权限不足问题
    杀死Windows中的进程镜像taskkill /F /IM 镜像名
    大家,中秋节快乐
    学习AutoIt
    为什么你应该(从现在开始就)对自己投资
    验证PE文件数字签名是否有效
    MySQL Cluster集群搭建与测试
    MySQL主从复制与读写分离
    Python与Zabbix API交互配置监控主机
  • 原文地址:https://www.cnblogs.com/hupengcool/p/4065206.html
Copyright © 2011-2022 走看看