【发布时间】:2021-02-01 08:47:19
【问题描述】:
我想读入一个二进制文件并从其内容中生成一个 c 初始化程序。但是不知何故,我的读取过程似乎总是跳过第一个字节。你能帮我解释一下为什么会这样吗?
该文件在二进制文件中以 0x4c 开头,但我从未在以下 python 代码的输出中看到这一点:
f = open("GoldenFPGA.bit", "rb")
count = 0
print("#ifndef __CL_NX_BITSTREAM_HEADER_H");
print("#define __CL_NX_BITSTREAM_HEADER_H");
print("const uint8_t cl_nx_bitstream[] = ");
print("{");
print(" 0x7A, 0x00, 0x00, 0x00,");
print(" ", end='')
try:
byte = f.read(1)
while byte:
# Do stuff with byte.
byte = f.read(1)
if byte:
print("0x" + byte.hex() + ", ", end='')
count = count + 1
if count % 8 == 0:
print("\n ", end='')
finally:
f.close()
print("\n};");
print("#endif");
感谢您对此问题的任何帮助。
【问题讨论】:
标签: python file-io binaryfiles