Python读写json

读写中文的json数据,可以用Python中的json库来进行操作。读取可以使用json.load

1
2
f = file(path)
data = json.load(f)

json是被载入到一个dict类型的object对象中。

使用json.dump可以输出json。不过输出的文本不是中文而是转换为utf-8的格式。

1
output = json.dump(jsonData,targetFile,ensure_ascii=False,indent=4)

输出中文的json。通过使用 ensure_ascii=False,输出原有的语言文字。indent参数是缩进数量。

如果把上文的String直接写入文件可能会出错,一般是在Python2.7的版本出现:

1
UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-9: ordinal not in range(128)  

解决的办法是在输出的时候进行编码:

1
2
3
import codecs
with codecs.open(path,'w','utf-8') as w:
#write to w

Comments

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×