将二进制读入十六进制字节数组

时间:2017-07-06 13:32:23

标签: c++ arrays

如何读取字节的文件字节并将十六进制格式的每个字节保存在数组中? 所以它看起来像这样:

unsigned char binaryData[10] = {
    0x4D, 0x5A, 0x90, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04, 0x4B
};

提前致谢

1 个答案:

答案 0 :(得分:0)

我认为这个问题本应该措辞:“如何将二进制数据转换为定义包含相同数据的数组的C ++源代码。”

我想你会想知道

xxd -i file.bin

对于上面的降价,它会发出:

unsigned char file_bin[] = {
  0x49, 0x20, 0x74, 0x68, 0x69, 0x6e, 0x6b, 0x20, 0x79, 0x6f, 0x75, 0x20,
  0x77, 0x69, 0x6c, 0x6c, 0x20, 0x77, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x6f,
  0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x0a,
  0x0a, 0x20, 0x20, 0x20, 0x20, 0x78, 0x78, 0x64, 0x20, 0x2d, 0x69, 0x20,
  0x66, 0x69, 0x6c, 0x65, 0x2e, 0x62, 0x69, 0x6e, 0x0a
};
unsigned int file_bin_len = 57;