簡體   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