Я пытаюсь выяснить, как обновить данные в двоичном файле с помощью Python.Обновление значения в двоичном файле с помощью Python
Я уже умею читать и писать полные файлы с помощью «массива», но у меня возникают проблемы с редактированием на месте.
Вот что я пробовал:
my_file.seek(100)
my_array = array.array('B')
my_array.append(0)
my_array.tofile(my_file)
По сути, я хочу, чтобы изменить значение байта в положении 100. Приведенный выше код действительно обновляет значение, но затем отсекает оставшуюся часть файла. Я хочу иметь возможность изменять значение в позиции 100, не изменяя ничего в файле.
Обратите внимание, что я редактирую файлы с несколькими гигабайтами, поэтому я не хочу читать всю вещь в памяти, обновлять память, а затем записывать обратно на диск.
Именно так. Благодаря! Поскольку я открывал файл для записи, я открыл его в «wb +», что имело больше смысла. Это то, что я получаю от того, что я не читал документы полностью. –