У меня есть эти 2 массива, представляющих шестнадцатеричные числа, и я хочу записать в файл в двоичном формате.
Я преобразую в шестнадцатеричную строку следующим образом:
a=["A2","48","04","03","EE","72","B4","6B"]
b=["1A","28","18","06","07","00","11","86","05","01","01","01","A0"]
hex_string1 = a.map{|b| b.to_i(16)}.pack("C*")
hex_string2 = b.map{|b| b.to_i(16)}.pack("C*")
Теперь я хочусначала запишите в файл hex_string2
, а затем добавьте (со смещением «0») hex_string1
к файлу.
Я продолжаю в том же духе, но вывод неправильный.
File.binwrite("outfile.bin",hex_string2)
File.binwrite("outfile.bin",hex_string1,0)
Текущий вывод:
A2 48 04 03 EE 72 B4 6B 05 01 01 01 A0
И правильный контент в «output.bin» будет выглядеть так:
A2 48 04 03 EE 72 B4 6B 1A 28 18 06 07 00 11 86 05 01 01 01 A0
Как это сделать?это?