Zip-файл в байтах Python 3 - PullRequest
       10

Zip-файл в байтах Python 3

0 голосов
/ 25 февраля 2019

Я хочу сохранить zip-файл в базе данных postgres.Столбец имеет тип bytea

При попытке получить байты файла JSON или CSV-файла, я могу использовать это

with open(filename, encoding='utf-8') as file_data:
    bytes_content = file_data.read()

Однако, если я попробую ZIP-файл,или даже файл XLS я получаю сообщение об ошибке.

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd7 in position 14: invalid continuation byte

Я провел поиск, и мне было предложено изменить тип кодировки, я пробовал latin-1 и ISO-8859-1, оба из которых выдают ошибку.

ValueError: A string literal cannot contain NUL (0x00) characters.

Есть идеи, как получить байты zip-файла, чтобы я мог сохранить его в базе данных postgres?

1 Ответ

0 голосов
/ 25 февраля 2019

Если вы хотите прочитать файл JSON в байтах, откройте файл в двоичном режиме:

with open(filename, 'rb') as file_data:
    bytes_content = file_data.read()
...