@AleksKc

Как декодировать байты в UTF-8?

Есть функция, которая читает файл побайтового. Нужно перевести файл в кодировку UTF-8. Пробовал использовать такой код для чтения файла

def readTags(filepath):
with open(filepath, 'rb') as f:
    byte = f.read()
    print(byte)

    while byte:
        byte = f.read()
        try:
            print(byte.decode('utf-8'))
        except Exception as e:
            continue


Но байты остаются в стандартном виде, т.е:
\xd0\xa1\xd0\xbf\xd0\xb0\xd1\x81\xd0\xb8\xd0\xb1\xd0\xbe \xd0\xb7\xd0\xb0 \xd0\xbf\xd0\xbe\xd0\xbc\xd0\xbe\xd1\x89\xd1\x8c


Где я допустил ошибку при переводе байтов в строку?
  • Вопрос задан
  • 432 просмотра
Решения вопроса 1
Zoominger
@Zoominger Куратор тега Python
System Integrator
UTF-8 использует от 1 до 4 байтов для кодирования символа. У вас же всегда читается один.

https://www.google.com/search?q=utf8+%D1%81%D0%BA%...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы