import struct
import os,sys
extfun=lambda x: x
def read_file_hex(file_path):
file_object = open(file_path,'rb')
file_object.seek(0,0)
hex_str =''
byte = file_object.read()
if byte:
for b in byte:
hex_str += ('%02X' % extfun(ord(b)))
file_object.close()
return hex_str
def wirte_to_file(hex,file_path):
fout = open(file_path,'wb')
for i in range(len(hex)/2):
x = int(hex[2*i:2*(i+1)], 16)
fout.write(struct.pack('B', extfun(x)))
fout.close()
def hex_replace(hex,find_str,replace_str):
return hex.replace(find_str,replace_str)
if __name__=='__main__':
file_str = read_file_hex('test.txt')
new_file_str = hex_replace(file_str,"333434","414243")
wirte_to_file(new_file_str,'test.txt')
python-文件替换二进制脚本
最新推荐文章于 2023-05-31 20:11:13 发布
本文介绍了如何使用Python语言通过二进制方式读取和写入文件,以及如何进行字符串的替换操作。通过实例演示了读取文件内容为十六进制字符串,然后替换特定字符串,并将修改后的十六进制字符串重新写回文件的过程。
3812

被折叠的 条评论
为什么被折叠?



