需求:读取文件,每行为一个json,需要改动某些节点,并重新写入文件中
方法:编码格式统一UTF8,读取文件后,
fout=open("test","w")
fout.write(json.dumps(data,ensure_ascii=False)+"\n")
这种方式会导致写入的文件中文不能显示。
解决办法,我们需要以指定的编码方式打开输出文件
import codecs
codecs.open ( "test" , 'w' , 'utf-8' )
这样就能够正常写入了。原因貌似是Python内部处理是Unicode,这是打开文件也是Unicode,导致输出不正常。
转载:fglee_ldq :python写json文件,中文乱码问题