繁体   English   中英

用python读取带有utf-8字符的json文件

[英]Reading json files with utf-8 characters with python

我有一个带有 utf-8 编码字符的大型 json 文件。 如何读取此文件并将这些字符转换为更易读的版本? 我有这样的事情:

{
    "name": "Wroc\u00c5\u0082aw"
}

我想要这个:

{
    "name": "Wrocław"
}

如果您的 JSON 数据包含这样的mojibake ,您可以通过将字符串转换为 Latin-1,然后将结果解码为 UTF-8 来将其转换为正确的 Unicode。 这会反转产生 mojibake 的任何过程。 (字符串来自 JSON 的事实无关紧要;这适用于任何这种类型的 mojibake 字符串。)

>>> s = "Wroc\u00c5\u0082aw"
>>> s.encode('latin-1').decode('utf-8')
'Wrocław'

在一般情况下,您必须对产生 mojibake 的原因进行逆向工程,但这种特殊情况很容易识别和排除故障,因为特别是 Latin-1 编码是明显和透明的(每个字节都按照其本身进行编码)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM