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

# -*- coding: utf-8 -*-

import json

import codecs

f = 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 json

import sys

reload(sys)

sys.setdefaultencoding( "utf-8" )

f = open('data.txt','r')

content = json.load(f)

print content[0]['id']

# 拼接json数据,转码为非ascii编码

jsdata = json.dumps(content,indent=4,ensure_ascii=False)

f.close()

j = open('test.json','w')

j.write(jsdata)

j.close()

以上这篇读写json中文ASCII乱码问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐