小编xia*_*oss的帖子

Java - 无法创建具有777权限的目录(而不是775)

我正在尝试使用公共写权限创建目录.为了简化我希望它拥有777权限的东西.这是我的代码:

private static FileAttribute<Set<PosixFilePermission>> DIR_PERMISSIONS;
static {
    Set<PosixFilePermission> perms = new HashSet<>();
    perms.add(PosixFilePermission.OWNER_WRITE);
    perms.add(PosixFilePermission.OWNER_READ);
    perms.add(PosixFilePermission.OWNER_EXECUTE);
    perms.add(PosixFilePermission.GROUP_WRITE);
    perms.add(PosixFilePermission.GROUP_READ);
    perms.add(PosixFilePermission.GROUP_EXECUTE);
    perms.add(PosixFilePermission.OTHERS_WRITE);
    perms.add(PosixFilePermission.OTHERS_READ);
    perms.add(PosixFilePermission.OTHERS_EXECUTE);
    DIR_PERMISSIONS = PosixFilePermissions.asFileAttribute(perms);
}

private Path ensurePath(LocalDate localDate) throws IOException {
    String year = String.valueOf(localDate.getYear());
    String month = String.format("%02d", localDate.getMonthValue());
    Path path = Paths.get(rootDirectory, year, month);
    return Files.createDirectories(path, DIR_PERMISSIONS);
}
Run Code Online (Sandbox Code Playgroud)

有了rootDirectory=/tmp/data这应该创建文件夹一样/tmp/data/2016/01,各有777权限.相反,文件夹具有775权限(drwxrwxr-x.),因此它们缺少公共写入.为什么这样工作?也许JVM需要特殊的参数才能设置这样的权限?我的系统是Fedora 24,app是标准的Spring Boot应用程序,由maven插件启动.

java posix file-permissions nio file

6
推荐指数
1
解决办法
1673
查看次数

php递归,函数不返回任何值

我希望我的函数返回整个url,从具有给定id的节点开始,并为父项进行serching,最后一个具有parent_id = 1.我的功能几乎可以工作,回显"$ wholeUrl"; 我有我的网址,但功能不会重新调整它,我不知道wtf,请帮忙.

这是我的代码:

function getUrl($ xml,$ id){

$wholeUrl="";
$wholeUrl= getMyUrl($xml,$id,$wholeUrl);
return $wholeUrl;
Run Code Online (Sandbox Code Playgroud)

}

function getMyUrl($ xml,$ idWew,$ wholeUrl){

foreach($xml as $node) {
    $par = $node->parent_id;
    $ide = $node->id;
    $url = $node->url;
    $name = $node->name;
    settype($par,'integer');
    settype($ide,'integer');

    if($ide==$idWew){

        $wholeUrl=$url."/".$wholeUrl;

        if($par==1){
            echo"$wholeUrl ";
            return $wholeUrl;
            break;
        }else{

            getMyUrl($xml,$par,$wholeUrl);
        }
    }

}
}


print_r(getUrl($xmlcat,1877));
Run Code Online (Sandbox Code Playgroud)

$ xmlcat是具有以下结构的平面数组:

SimpleXMLElement Object ( [id] => 1876 [parent_id] => 1 [name] => blablabla, bla, bla [url] => bla-bla-bla-bla ) 
Run Code Online (Sandbox Code Playgroud)

php recursion return

-1
推荐指数
1
解决办法
1714
查看次数

标签 统计

file ×1

file-permissions ×1

java ×1

nio ×1

php ×1

posix ×1

recursion ×1

return ×1