Python:将十进制数写入二进制fi

2024-05-17 10:19:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要替换ASN1编码的二进制文件中的几个字节。因为我完全超出了ASN1的范围,所以我只想替换一些从位置9(偏移量)开始、长度为9字节的字节。在

我可以打开一个文件进行二进制写入

fh = open("EmvData_3839_test.der", "r+b")
fh.seek(8)
fh.write(bytearray(9)) 
fh.close()

这将把我的9字节替换为00 00 00。。。。在

我需要将数字(例如123456789012345678)转换为类似 \x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x00\x01。。。这样我就可以把它fh.写入()方法,它将用新值替换旧值。这就像将一个长数字拆分为个位数,然后将其转换为格式\xYY并进行bytearray?(我的意思是格式化什么文件.写入()可以处理)

请考虑一下,在python中,如果不使用google搜索,我甚至不能编写一个基本的循环:)

非常感谢


Tags: 文件test编码字节二进制数字open偏移量