Вопрос № 163505: Здравствуйте ув. эксперты! Как исправить проблему отображения русских символов получаемых idHttp.get в Delphi 2009 В 2007 все работает нормально....
Вопрос № 163.505
Здравствуйте ув. эксперты!
Как исправить проблему отображения русских символов получаемых idHttp.get в Delphi 2009 В 2007 все работает нормально.
Отвечает: Лукьяненко Алексей Валериевич
Здравствуйте, Александр Романов [Alexo]!
К сожалению, Indy не знает о том, что есть кодировка windows-1251. И полученный поток передает без преобразования кодировки в строку - в итоге получается строка с кодировкой Unicode, но данные в ней - windows-1251.
Решение - обрабатывать самому:
Код:
var M: TmemoryStream; S: AnsiString; begin M := TMemoryStream.Create; IdHTTP1.Get('http://rusfaq.ru/info/Question/163505', M); SetLength(S, M.Size); CopyMemory(Pointer(S), M.Memory, M.Size); Memo1.Lines.Text := S; M.Destroy; end;
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.