读写json中文ASCII乱码的问题

来源:互联网 发布:python帮助文档 编辑:程序博客网 时间:2024/05/17 22:55

今天要帮前端写一个小后台,就是读取数据然后转成json送给他,让他去展示。数据很简单,但是处理的时候遇到了一个问题,文件中涉及到了中文的处理,每次处理完写的json格式就是ASCII码,完全没办法用。代码如下:

# -*- coding: utf-8 -*-import jsonimport codecsf = codecs.open('data.txt', 'r', 'utf-8')content = json.load(f)print content[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 -*-import jsonimport sysreload(sys)sys.setdefaultencoding( "utf-8" )f = open('data.txt', 'r')content = json.load(f)print content[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()
0 0