Python编码解码错误:UnicodeDecodeError:'charmap'编解码器无法解码字节

10 浏览
0 Comments

Python编码解码错误:UnicodeDecodeError:'charmap'编解码器无法解码字节

这个问题已经有答案了

错误:UnicodeDecodeError: \'utf-8\'编解码器无法解码第0个位置的字节0xff:无效的起始字节

我正在尝试操纵图像,但我无法摆脱这个错误:

fichier=open("photo.jpg","r")
lignes=fichier.readlines()
Traceback (most recent call last):
  File "", line 1, in 
    lignes=fichier.readlines()
  File "C:\Winpython\python-3.5.4.amd64\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 207: character maps to 

我看到论坛中有人说在“打开…”中添加encoding=\'utf-8\',但那行不通

admin 更改状态以发布 2023年5月21日
0
0 Comments

你的问题出在 open() 命令上。您的 JPEG 图像是二进制的,应该使用 open('photo.jpg', 'rb')

另外,不要对该文件使用 readlines(),此函数应该用于字符输入。

这是一个例子……

import struct
with open('photo.jpg', 'rb') as fh:
    raw = fh.read()
for ii in range(0, len(raw), 4):
    bytes = struct.unpack('i', raw[ii:ii+4])  
    # do something here with your data

0