我有一个png字符串,如下所示:
"89504e47 0d0a1a0a 0000000d 49484452 000000b6 00000067 08020000"
大约10万个字符。
如何将其转换为png文件?
答案 0 :(得分:1)
删除空格,使用Array#pack
将六进制十进制表示转换为二进制序列。
bin_seq = ["89504e47 0d0a1a0a 0000000d 49484452 ....".gsub(' ', '')].pack('H*')
# => "\x89PNG\x00\xD0\xA1\xA0\xA0\x00\x00\x00\r\x04\x94\x84E..."
然后将其写入文件。
IO.write('/path/to/a_image_file.png', bin_seq, {mode: 'wb'})