2014-01-30 33 views
0

如何將ruby字符串中的字節序列編碼爲ruby字符串人類可讀字符?如何將字節序列編碼爲包含字符的ruby字符串

這是輸入字符串:

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

那麼如何此字符串解析成與字節數組,

和每一個元件從陣列編碼成ASCII字符?

P.S.但是,我無法找到從字節返回數組的方式。我嘗試使用U *選項使用Array.pack,但不適用於多字節字符。

+2

請給例子,你的意思是什麼「人類可讀」(我能讀懂你的例子就好了,如果我是把它理解爲一個Ruby字符串)。此外,顯示目前爲止已有的代碼是一個好主意,否則需要花費更多的精力來回答你的問題(而更少的人會這麼認爲)。 –

+0

可能是這個方法會幫你 - http://www.ruby-doc.org/core-2.1.0/String.html#method-i-unpack ..但是我怎麼不知道.. :) –

+0

對不起,在這一點上關閉。我想,如果你知道你在找什麼,你可能不需要首先提問這個問題。 – jww

回答

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)" 
相關問題