You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用utf-8读取JSON文件出现乱码问题求助

解决JSON文件UTF-8乱码问题

你的问题根源是JSON文件中的文本被双重编码了:原本的UTF-8越南语字符被先编码成字节,再把这些字节以Unicode转义序列(比如\u00c3\u00a0)的形式写入JSON。直接用utf-8解码会导致二次解码,最终出现乱码。

修复代码

import json

with open('message_1.json', 'r', encoding='utf-8') as file:
    raw_content = file.read()
    # 将Unicode转义序列还原为字节,再用UTF-8解码得到正确字符串
    corrected_content = raw_content.encode('utf-8').decode('unicode-escape')
    data = json.loads(corrected_content)
    print('message', data)

关键说明

  • 原JSON里的\u00c3\u00a0是UTF-8编码"à"后的字节(b'\xc3\xa0')被转义成Unicode序列,必须先把这些转义序列还原成原始字节,再用UTF-8解码才能得到正确的越南语字符。
  • with语句会自动处理文件关闭,无需手动调用file.close()。

内容的提问来源于stack exchange,提问作者famfamfam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 00:27:01