파이썬을 사용하여 이진 파일의 데이터를 업데이트하는 방법을 알아 내려고하고 있습니다.파이썬으로 이진 파일의 값을 업데이트하는 중
"배열"을 사용하여 전체 파일을 읽고 쓰는 것이 이미 편하지만 위치 수정에 문제가 있습니다. 나는 위치 (100) 값을 업데이트 않습니다 위의 코드에서 바이트의 값을 변경하려면, 기본적으로
my_file.seek(100)
my_array = array.array('B')
my_array.append(0)
my_array.tofile(my_file)
을하지만, 다음 파일의 나머지 부분을 잘라 :
는 여기에 내가 무엇을 시도했다입니다. 파일에서 다른 것을 수정하지 않고 위치 100의 값을 변경할 수 있기를 원합니다.
멀티 기가 바이트 파일을 편집 중이므로 메모리 전체를 읽고 메모리를 업데이트 한 다음 디스크에 다시 쓰지 않으려합니다.
그게 전부였습니다. 감사! 글쓰기를 위해 파일을 여는 중이므로 'wb +'로 열었습니다. 그것이 내가 문서를 철저히 읽지 않기 위해 얻은 것입니다. –