Почему кириллица превращается в неизвестные символы?
Мой код можете чекнуть на PASTEBIN тут.
После работы программы она выдаёт такое: ÐегионеÑÑÐºÐ°Ñ ÑÑÑÑма[JBE]
А должно быть: Легионерская тюрьма[JBE]
Возможно проблема в функции __get_string.
Пожалуйста, проверьте код. Второй день не могу решить... Всем спасибо заранее.
def __get_string(self, data):
s = ""
i = 0
if not self.is_third:
while data[i] != '\x00':
s += data[i]
i += 1
else:
while chr(data[i]) != '\x00':
s += chr(data[i])
i += 1
return s, data[i + 1:]
В Python 3+ строки используют Unicode представление. Поэтому, когда получаете сырые данные в виде строки, то надо знать в какой кодировке она передаётся. Потом прочитать в виде bytes и перекодировать в Unicode. Предполагаю, что у вас строки в кодировке Windows-1252. Другие кодировки