UTF-8 символ меняется на два символа - PullRequest
0 голосов
/ 10 февраля 2010

В моем текстовом файле я использовал символ со значением больше 127, например 0xDC. Затем я загрузил этот текстовый файл в устройство. Затем я читаю этот текстовый файл и этот символ. Затем персонаж был изменен на 0xC3 и 0x9C. Как это может измениться на два символа?

Спасибо

Ответы [ 2 ]

2 голосов
/ 10 февраля 2010

Потому что это последовательность символов при кодировании в UTF-8:

>>> '\xc3\x9c'.decode('utf-8')
u'\xdc'
1 голос
/ 10 февраля 2010

Из википедии:

"UTF-8 кодирует каждый символ (кодовую точку) от 1 до 4 октетов (8-битных байтов), при этом кодирование одного октета используется только для 128 символов US-ASCII."

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...