我尝试将用户的文件的用户权限作为字符串获取,并将其转换为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--
我一直试图寻找解决方法。
那么,我究竟是如何实现这一目标的?
答案 0 :(得分:4)
func :: Num a => [b] -> (type-of-f) -> a
func :: Num a => [b] -> (b -> a) -> a
你在这里明确要求基数10。如果你想要base 8(这是unix文件模式的传统基础),那么你需要在第二个参数中使用tempval, err2 = strconv.ParseUint(data["Perm"], 10, 32)
。或者更好的是,使用基数8
,由于前导0,它会自动选择基数为8.请参阅0
上的文档,了解“基数0”的工作原理。