Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby中的十六进制到十进制转换_Ruby_Unpack_Hex - Fatal编程技术网

Ruby中的十六进制到十进制转换

Ruby中的十六进制到十进制转换,ruby,unpack,hex,Ruby,Unpack,Hex,我有“\001\022”作为a的值。我想要的十进制值是274 我尝试了以下功能。但我得到[“0112”] 当我用计算器把这个“0112”转换成十进制时,它给了我274。我怎样才能得到这样的感觉 这是使用ruby方法实现的 谢谢您问题中的格式字符串:“H*”表示“十六进制字符串(高半字节优先)”。因此,它将字符串解码为4位十六进制元素数组 你需要一种不同的格式 请尝试将其解码为“16位无符号网络(big-endian)字节顺序”整数: 有关可在格式字符串中使用哪些字符的完整详细信息,请查看 a.u

我有
“\001\022”
作为a的值。我想要的十进制值是274

我尝试了以下功能。但我得到[“0112”]

当我用计算器把这个“0112”转换成十进制时,它给了我274。我怎样才能得到这样的感觉 这是使用ruby方法实现的


谢谢

您问题中的格式字符串:“H*”表示“十六进制字符串(高半字节优先)”。因此,它将字符串解码为4位十六进制元素数组

你需要一种不同的格式

请尝试将其解码为“16位无符号网络(big-endian)字节顺序”整数:

有关可在格式字符串中使用哪些字符的完整详细信息,请查看

a.unpack("H*")  ==>  ["0112"]  
a.unpack("n") # => [274]