UnicodeDecodeError: 'gbk' codec can't decode byte 0x90 in position 19: illegal multibyte sequence
时间: 2024-03-19 20:38:47 浏览: 235
关于GBK和Unicode字符集转换乱码问题
3星 · 编辑精心推荐
UnicodeDecodeError: 'gbk'编解码器无法解码字节0x90,位置在第19位,这是一个非法的多字节序列错误。这个错误通常发生在尝试使用错误的编码方式解码文本时。在你的情况下,你正在尝试使用'gbk'编码方式解码一个包含非法多字节序列的文本。为了解决这个问题,你可以尝试以下方法:
1. 使用正确的编码方式打开文件:[^2]
```python
filepath = r'C:/Users/Desktop/报文/报文.txt'
with open(filepath, encoding='utf-8') as d:
q = d.read()
print(q)
```
在这个例子中,我们使用'utf-8'编码方式打开文件,因为'utf-8'是一种常用的编码方式,可以处理包含非法多字节序列的文本。
2. 使用错误处理方式处理非法字符:
```python
filepath = r'C:/Users/Desktop/报文/报文.txt'
with open(filepath, errors='ignore') as d:
q = d.read()
print(q)
```
在这个例子中,我们使用'ignore'错误处理方式,它会忽略非法字符并继续解码文本。
3. 尝试其他编码方式:
如果以上方法都无法解决问题,你可以尝试其他编码方式,例如'gb18030'、'big5'等。你可以根据你的文本内容和编码方式进行尝试。
阅读全文