ruby pack解压缩问题

时间:2011-07-14 16:31:07

标签: ruby

> [65].pack('c')
 => "A" 

在上述情况下,65存储为1000 0010。由于c返回8-bit unsigned char,因此返回的值为65,恰好是A的ASCII代码。

我没有得到以下两个操作的结果。任何解释都会有所帮助。

> ['A'].pack('H')
 => "\xA0" 
> ['A'].pack('h')
 => "\n" 

1 个答案:

答案 0 :(得分:4)

如果您阅读文档,则可以找到:

H         | String  | hex string (high nibble first)
h         | String  | hex string (low nibble first)

我不知道为什么你需要翻转小吃,但是如果你需要它就可以使用它。

在您的情况下,A被解释为A0单向,0A被解释为另一种方式。十六进制输入应作为字符对提供。