Ruby 转换 Hex文本文件为二进制文件
用串口调试助手接受哦串口数据,貌似没找到怎么直接存储为二进制文件,所以用文本框显示十六进制字节流表示,然后存储(如果直接显示二进制会乱码,而且转换会丢失数据)。然后就写了个Ruby脚本来还原这个十六进制文本流。
filename = ARGV[0] bytes = [] File.open(filename, "r") do |file| while str = file.gets bytes += str.split.map {|byte| byte.hex} end end puts bytes.count newfilename = filename + ".bin" File.open(newfilename, "wb") do |file| file.write bytes.pack("C*") end