excel 'utf8'编解码器无法解码字节0xf3

b5lpy0ml  于 2022-12-01  发布在  其他
关注(0)|答案(1)|浏览(145)

我使用python 2.7来读取JSON文件。我的代码是:

import json
from json import JSONDecoder
import os

path = os.path.dirname(os.path.abspath(__file__))+'/json'
print path

for root, dirs, files in os.walk(os.path.dirname(path+'/json')):
    for f in files:  
        if f.lower().endswith((".json")):
            fp=open(root + '/'+f)
            data = fp.read()
            print data.decode('utf-8')

但我得到了以下错误:

UnicodeDecodeError: 'utf8' codec can't decode byte 0xf3 in position 72: invalid continuation byte
6qqygrtg

6qqygrtg1#

您的文件未使用UTF-8编码,错误出现在fp.read()行。您必须使用:

import io
io.open(filename, encoding='latin-1')

连接路径的正确用法(不依赖于平台)是:

os.path.join(root, f)

相关问题