проблема при создании файла из массива байтов [closed]

Я создаю файл копии исходного файла asino.jpg со следующим кодом:

import os
file_size = os.path.getsize('asino.jpg')
print("filesize : " + str(file_size))
buffer_size = 100
b= bytearray(file_size)
with open("asino.jpg","rb") as f :
  f.readinto(b)
with open("asinocopy.jpg","wb") as fout :
  for i in range(0,file_size - buffer_size,buffer_size):
    end_array = i+buffer_size - 1
    fout.write(b[i:end_array])
    print(f" start : {i} stop : {end_array}")
  missing_start=int(file_size/buffer_size)*buffer_size
  missing_stop= missing_start + int(file_size%buffer_size)
  fout.write(b[missing_start:missing_stop])
  print(f"start : {missing_start} stop : {missing_stop}")

весь массив байтов был скопирован правильно, я проверил отпечатки, начинающиеся с 0 до индекса 55121. Размер файла 55121. Но новый файл меньше исходного:

-rw-r--r-- 1 user user 54570 12 dic 10.57 asinocopy.jpg
-rw-r--r-- 1 user user 55121 11 dic 18.28 asino.jpg

Это странно, что не так в приведенном выше коде Python? Спасибо

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *