读写json中文ASCII乱码问题的解决方法
今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示。数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,完全没办法用。代码如下:
#-*-coding:utf-8-*-
importjson
importcodecs
f=codecs.open('data.txt','r','utf-8')
content=json.load(f)
printcontent[0]['id']
jsdata=json.dumps(content,sort_keys=True,indent=4)
f.close()
j=codecs.open('test.json','w')
j.write(jsdata)
j.close()
网上查了一下,修改后的代码如下:
#-*-coding:utf-8-*-
importjson
importsys
reload(sys)
sys.setdefaultencoding("utf-8")
f=open('data.txt','r')
content=json.load(f)
printcontent[0]['id']
#拼接json数据,转码为非ascii编码
jsdata=json.dumps(content,sort_keys=True,indent=4,ensure_ascii=False)
f.close()
j=open('test.json','w')
j.write(jsdata)
j.close()
以上这篇读写json中文ASCII乱码问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。