我需要替换ASN1编码的二进制文件中的几个字节。因为我完全没有ASN1范围,所以我想从位置9(偏移)开始替换一些字节,长度为9个字节。
我能够打开二进制写入文件
fh = open("EmvData_3839_test.der", "r+b")
fh.seek(8)
fh.write(bytearray(9))
fh.close()
这用00 00 00 ....替换我的9个字节。
我需要转换数字,例如123456789012345678之类的东西 \ x00 \ x01 \ x02 \ x03 \ x04 \ x05 \ x06 \ x07 \ x08 \ x09 \ x00 \ x01 ...这样我就可以把它放到fh.write()方法中,它会用new代替我的旧值。它就像是将长数字拆分为单个数字,然后将它们转换为格式\ xYY并生成一个bytearray? (我的意思是格式化file.write()可以处理的内容)
请考虑在python中我甚至不能写一个没有谷歌搜索的基本循环:)
非常感谢