in Python 3.8.2 I trying to open the JSON file and read data from it. JSON file is encoded in UTF-8 but when I read it, final string seems as to by wrongly opened as ANIS.
Tried with Notepad++:
JSON file opened in UTF8:
"úterý, třicátého-prvního, sedumnáct v jedna dvacet dva"
Changed coding to ANIS:
"ĂşterĂ˝, tĹ™icátĂ©ho-prvnĂho, sedumnáct v jedna dvacet dva"
When I copy string directly to python file, it is read properly.
My program:
import json
print('Wrong characters:')
with open('C:/Users/Tony/Desktop/test.json',
'r') as jfile:
data = json.loads(
jfile.read())
print(data)
print('Ok Characters:')
data2 = json.loads('{ "td": { "1": { "as": "úterý, třicátého-prvního, sedumnáct v jedna dvacet dva"}, "2": { "as": "úterý, třicátého-prvního, sedumnáct v třináct dvacet dva"}}}')
print(data2)
print('System settings:')
import sys; print(sys.stdout)
Console output:
Wrong characters:
{'td': {'1': {'as': 'ĂşterĂ˝, tĹ™icátĂ©ho-prvnĂ\xadho, sedumnáct v jedna dvacet dva'}, '2': {'as': 'ĂşterĂ˝, tĹ™icátĂ©ho-prvnĂ\xadho, sedumnáct v tĹ™ináct dvacet dva'}}}
Ok Characters:
{'td': {'1': {'as': 'úterý, třicátého-prvního, sedumnáct v jedna dvacet dva'}, '2': {'as': 'úterý, třicátého-prvního, sedumnáct v třináct dvacet dva'}}}
System settings:
<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>