gpt4 book ai didi

Golang - 将 uint 转换为 os.FileMode

转载 作者:IT王子 更新时间:2023-10-29 01:36:22 27 4
gpt4 key购买 nike

我正在尝试以字符串形式从用户那里获取文件的用户权限,并将其转换为 os.FileMode 类型。

所以,我得到"0644"权限后,转换成644。我将其用作 ioutil.WriteFile 的参数。

这就是我正在做的。

data["perm"] = "0644"
tempval, err2 = strconv.ParseUint(data["Perm"], 10, 32)
// tempval is 644

我没有获得正确的权限。

我得到 --w----r-- 而不是 -rw-r--r--我一直在努力寻找解决方法。

那么,我究竟该如何实现呢?

最佳答案

tempval, err2 = strconv.ParseUint(data["Perm"], 10, 32)

您在这里明确要求以 10 为基数。如果您想要以 8 为基数(这是 unix 文件模式的传统基数),则需要在第二个参数中使用 8。或者更好的是,使用基数 0,由于前导 0,它会自动选择基数 8。有关“基数 0”的工作原理,请参阅 strconv.ParseInt 上的文档。

关于Golang - 将 uint 转换为 os.FileMode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32933980/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com