环境:
实时数字人
问题描述:
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0x89 in position 10: invalid start byte
解决方案:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 10: invalid start byte
这个错误通常发生在尝试用UTF-8编码解码一个非UTF-8编码的数据文件时。例如,在读取一个包含PNG图像文件头(PNG文件头以0x89PNG
开始)的文件时,如果误用了文本文件的读取方式而不是二进制模式,就会出现这种错误。
解决方法
-
检查文件类型:确认你正在打开的文件确实是文本文件。如果是二进制文件(如图像文件),则应使用二进制模式打开。
-
使用正确的编码格式:如果文件确实是文本文件,但编码不是UTF-8,请指定正确的编码格式。例如,如果文件是用GBK编码的,则应这样打开: