python - 使用十六进制值 PYTHON 覆盖文件中的咬痕
问题描述
我有一个十六进制表示的值“c”:0x515d6e39。这意味着咬合看起来如下:51 5D 6E 39. 我的任务是转到已经存在的文件,打开它并用上面提到的咬合替换位置(例如)38-41 的咬合。
我试图以“rb”模式打开文件。然后我使用搜索功能去想要的位置。然后使用值为“c”的写入函数,但它不起作用。谁能帮我解决这个问题?
我附上我的代码:
import binascii
def main():
a=963534161
b=bytearray.fromhex(format(a, 'x'))
b.reverse() ## I wanted to reverse my bites
c=hex(int(binascii.hexlify(b),16))
print c
file=r'D:\Programs\WinKalk\winkalk.7zip' ## path to any file
f=open(file, 'wb')
f.seek(38) ## for example position 38th
f.write(c)
f.close()
if __name__ == '__main__':
main()
错误:“str”不支持缓冲区接口
解决方案
推荐阅读
- mysql - 如何在 laravel 框架中使用 Carbon 和 Eloquent 使用特定日期来获取整个开始周和结束周?
- algorithm - 是否可以为多个用户自动创建 AppleWallet 和 AndroidWallet 的 .pkpass 文件?
- module - 有没有办法关闭 SAP ABAP 中的嵌套弹出窗口并返回上一个?
- react-native - layoutAnimation 在两个视图之间切换时会在 Android 上导致额外的蓝色背景
- kotlin - 在 Kotlin 中使用 println 奇怪地重定向到 stderr
- import - 有没有办法迁移包含关系的 neo4j 数据库?
- excel - 在活动单元格下的表格中添加一行
- c# - 使用附加属性从 View 更新 ViewModel
- python - python - 如何检查df中所有列的dtypes在python中是否相同?
- sql - 在 ClickHouse 中将列数据透视到 NxM 表中