3
У меня проблема с преобразованиями строк в utf-8. Я использую стандартный метод Indy для отправки с преобразованием внутри:Indy, IdTCPSever отправка данных в utf = 8 charset
AContext.Connection.IOHandler.writeln(Utf8Encode('ĄĘÓ'));
но клиент читает их как «???» - 3f 3f 3f в hex (я проверил его, используя WireShark тоже).
Я использую Delphi XE и Indy 10.
Большое спасибо за любую помощь.
~ Артик
Я знаю, что могу использовать что-то вроде этого: AContext.Connection.IOHandler.writeln ('ЭП', TIdTextEncoding.UTF8); но что я могу сделать, чтобы отправить TStringlist в обычную строку. Итерация элементами TStringlist не приводит к решению в моей ситуации. – Artik
Существует функция перегрузки 'TIdIOHandler.Write()' для данных 'TStrings' и имеет необязательный параметр' TIdTextEncoding', например: 'AContext.Connection.IOHandler.Write (MyStringList, False, TIdTextEncoding.UTF8);' –