我可能会以错误的方式解决这个问题,这可能最终会成为别的东西。
我有一个字符串,我需要转换为二进制/十六进制。
这就是我想要做的事情:
2.0.0p247 :050 > "test".unpack("H*").first
"74657374"
74657374
是我需要的十六进制字符串,但我需要它们实际的十六进制,而不是字符串。
如何将此内容导入\x74\x65\x73\x74
?
我已尝试pack
十六进制字符对,但它们最终以字符串形式返回。我的目标是将一堆字符串解析为十六进制,然后将它们写入文件。
答案 0 :(得分:3)
你根本不需要做任何事情。 "\x74\x65\x73\x74"
只是"test"
的另一种表示形式。尝试IRB:
"\x74\x65\x73\x74" == "test"
#=> true
还要考虑:
$ ruby -e "File.open('test.txt', 'w'){|f| f.write 'test'}"
$ hexdump test.txt
0000000 74 65 73 74
0000004