|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.11.2014, 22:35 | #1 |
Пользователь
Регистрация: 28.12.2007
Сообщений: 39
|
Utf-8 нечитабельные знаки
Здравствуйте. Загружаю пакет через httpsend (synapse). Распаковываю и сохраняю в файл.
Код HTML:
procedure UnzipHttp(http: THTTPSend; stream:TStream); begin HeadersToList(http.Headers);//привели заголовки к виду Name=Value Stream.Size := 0; Stream.Position := 0; if Trim(http.Headers.Values['Content-Encoding']) = 'gzip' then {проверяем заголовок} begin //тут разжимаем данные GZDecompressStream(http.Document, Stream); end else begin //так как данные не сжаты - просто считываем строку http.Document.SaveToStream(Stream); end; end; .... var Stream: TStringStream; ... UnzipHttp(Httpsend, stream); stream.SaveToFile('c:\1\INPUT1.txt'); Заголовки ответа: Код HTML:
(Status-Line):HTTP/1.1 200 OK Server:nginx Date:Mon, 10 Nov 2014 19:19:46 GMT Content-Type:text/html;charset=UTF-8 Connection:keep-alive Access-Control-Allow-Origin:http://www.....com Content-Length:8388 Код HTML:
Stream := TStringStream.Create; Stream.Size := 0; Stream.Position := 0; html := TStringList.Create; Stream.LoadFromFile('c:\1\INPUT1.txt'); Stream.Position := 0; html.Text := Stream.ReadString(stream.Size); Memo1.Lines.Text := html.Text; Добавляю: Код HTML:
var s:AnsiString; ... s := UTF8ToString(html.Text); html.Text := s; Memo1.Lines.Text := html.Text; Спасибо. Последний раз редактировалось FLIER; 11.11.2014 в 11:49. |
10.11.2014, 22:42 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,430
|
Попробуйте UTF8Encode, Decode
|
10.11.2014, 23:12 | #3 |
Участник клуба
Регистрация: 30.01.2011
Сообщений: 1,578
|
в indy HTTPClient помогло с кодировкой
Код:
так же можно добавить формат данных ожидаемых, тогда будет так: Код:
пишу код не только за печеньки
|
10.11.2014, 23:35 | #4 | |
Участник клуба
Регистрация: 10.08.2010
Сообщений: 1,392
|
Цитата:
Код:
E_MAIL: rijgvina7@yahoo.com
|
|
11.11.2014, 10:25 | #5 | |
Пользователь
Регистрация: 28.12.2007
Сообщений: 39
|
Цитата:
Не помогло. Спасибо за наводку. Cервер у себя сохраняет переданные данные. Закодировал перед отправкой и все получилось Последний раз редактировалось FLIER; 11.11.2014 в 12:04. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Реально ли перевести UTF-16 в UTF-8, если да то как? | FleXik | Общие вопросы Delphi | 7 | 28.09.2014 12:11 |
Знаки зодиака | shilovec5377 | JavaScript, Ajax | 1 | 20.01.2012 22:05 |
Преобразовние Utf-16 <=> Utf-8 | hard-t | Общие вопросы C/C++ | 1 | 26.08.2011 13:54 |
Знаки транскрипции | sagitron | Microsoft Office Word | 6 | 01.08.2011 14:51 |
Ansi в UTF-8 и наоборот UTF-8 в Ansi | Alar | Работа с сетью в Delphi | 3 | 09.12.2010 17:02 |