Ruby to_bytes需要反向功能

时间:2011-10-10 13:08:23

标签: ruby string byte

我有来自github或其他的这个函数:

class String
  def to_bytes
    (0...self.length/2).map {|i|self[i*2,2].to_i(16)}
  end
end

而且我的观点是,我不确定整件事情是做什么的,特别是自我[某事]部分,请有人帮我扭转这个程序吗?我没有经验,我有点迫切需要将这些数字带回字符串。

非常感谢

2 个答案:

答案 0 :(得分:2)

我认为您无法将to_bytes的结果可靠地转换回原始字符串。 "a".to_bytes"b".to_bytes都会生成[0]。但是,假设这对您来说不是问题,那么to_bytes方法的反面就是这样:

def reverse_string_to_bytes bytes
  result = ""
  bytes.each do |pair|
    result << pair.to_s(16)
  end
end

答案 1 :(得分:-1)

似乎无所事事......

为什么不是

"My string".bytes.reverse
# Or
def reverse_bytes(str)
    str.bytes.reverse
end