Tim Peters wrote: > [Claudio Grondi] > >> I have a 250 Gbyte file (occupies the whole hard drive space) > > > Then where is Python stored ;-)? > >> and want to change only eight bytes in this file at a given offset of >> appr. 200 >> Gbyte (all other data in that file should remain unchanged). >> >> How can I do that in Python? > > > Same way you'd do it in C, really: > > f = open(PATH_TO_FILE, "r+b") > f.seek(appr. 200 Gbyte) > f.write(A_STRING_CONTAINING_YOUR_NEW_8_BYTES) > f.close() > > This depends on your operating system and file system and platform C > library supporting seeks to very large offsets. For example, Windows > using NTFS does. Try it. Python should complain (raise an exception > during the seek() attempt) if your box refuses to cooperate. Use as > recent a released version of Python as you can.
Thank you much for the quick response. The core of my problem was ... trying to use 'wb' or 'w+b' ... (stupid me ...) Claudio Grondi -- http://mail.python.org/mailman/listinfo/python-list