def read_json(self):
path = r'D:\xxx.json'
with open(path) as f:
str = json.loads(f.readline())
print(str)
今天用python3.6在读取一个json文件时,总是提示编码错误的问题。
首先json文件保存的是UTF-8的格式,但python打开文件时没有指定编码,所以计算机里存储的还是unicode编码,在readline()时,发现文件中有中文,然后试图用gbk去解码,但文件本身是utf-8,所以解码失败。
修改如下,即解决问题。
def read_json(self):
path = r'D:\xxx.json'
with open(path,'r', encoding='utf-8') as f:
str = json.loads(f.readline())
print(str)