python2 json中寫入中文後dumps後轉爲gbk編碼

數據庫中某個表中的某個字段比如opt 是json 格式 該表的編碼是gbk
另外一個數據庫的某個表格式是utf8的,comment字段也是json的
那麼 如何將comment字段中的 某個key的值 取出來 存進opt中,並且 查看以gbk格式查看opt能夠正常顯示漢子

對opt 進行操作 該opt是gbk格式 需要解碼的時候 使用對應的編碼格式
jopt = json.loads(opt,encoding='gbk')

對於 comment操作 該comment是utf8格式,默認解碼是utf8
jcomm = json.loads(comment)
val = jcomm["val"]
jopt["val"] = val
jopt添加新成員後,使用dumps編碼
jdata = json.dumps(jopt,ensure_ascii=False).encode("gbk")
因爲有中文 所以要ensure_ascii=False,這時候不知道爲什麼編碼後的數據位unicode格式 
所以我們在對齊進行編碼成gbk 即可jdata編碼爲gbk 插入數據庫中查看該表可在gbk下正常顯示中文漢字
(理論上json.dumps(jopt,ensure_ascii=False,encoding="gbk") 直接在序列化的時候執行編碼格式爲gbk就可以 
奈何事實還是utf8的格式。。。所以只能用以上的方法進行替換了,)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章