如何使用字符将字节序列编码为ruby字符串

时间:2014-01-30 14:16:31

标签: ruby string encode hex

如何将ruby字符串中的字节序列编码为ruby字符串中的可读字符?

这是输入字符串:

"\x127\x00\x06\x00\x00\x00\x01\x00\xA2\x8F"

那么如何将这个字符串解析为带有字节的数组

并将每个元素从数组编码为ASCII字符?

P.S。但是,我找不到从字节往返到数组的方法。我尝试使用带有U *选项的Array.pack,但这对多字节字符不起作用。

1 个答案:

答案 0 :(得分:2)

您可以尝试以下内容:

"string\xaa".each_byte.map {|b| "%c(%x)" % [ b, b ] }.join( ' ' )
# => "s(73) t(74) r(72) i(69) n(6e) g(67) ª(aa)"