finding/replacing a long binary pattern in a .bin file
stephen.thorne at gmail.com
Thu Jan 13 01:51:46 EST 2005
On 12 Jan 2005 22:36:54 -0800, yaipa <yaipa at yahoo.com> wrote:
> What would be the common sense way of finding a binary pattern in a
> .bin file, say some 200 bytes, and replacing it with an updated pattern
> of the same length at the same offset?
> Also, the pattern can occur on any byte boundary in the file, so
> chunking through the code at 16 bytes a frame maybe a problem. The
> file itself isn't so large, maybe 32 kbytes is all and the need for
> speed is not so great, but the need for accuracy in the
> search/replacement is very important.
Okay, given the requirements.
f = file('mybinfile')
contents = f.read().replace(oldbinstring, newbinstring)
f = file('mybinfile','w')
Will do it, and do it accurately. But it will also read the entire
file into memory.
More information about the Python-list