Ruby字符串到八进制?

时间:2010-08-20 06:39:33

标签: ruby

如何在Ruby中将“755”转换为0755?我想使用字符串将权限传递给方法,然后将其转换为chmod使用。

3 个答案:

答案 0 :(得分:15)

这应该这样做:

"755".to_i(8)
# => 493

"755".to_i(8) == 0755
# => true

答案 1 :(得分:0)

派对有点晚了,但你可以通过传递字符串和基数来检查输入错误,从而实例化一个Integer,

Integer("755",8)=493
Integer("855",8)
ArgumentError: invalid value for Integer(): "855"

begin
     Integer("855",8)
rescue ArgumentError, TypeError
     "Bad input"
end

答案 2 :(得分:-4)

def append_zero_to_string(string)
    0.to_s + string
end