Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2015, 14:21   #1
KORT
Вот я и
Форумчанин
 
Аватар для KORT
 
Регистрация: 07.04.2007
Сообщений: 501
По умолчанию Распаковка респонса! Delhpi

Доброе время суток! Такой вопрос я посылаю запрос на сервер, о выдает краказябру! Снифером смотрю: кодировка gzip. В проект добавляю модуль ZLibEх и создаю функцию:
Код:
function DecompressString(const aString: string): string;
var
  lStr: TStringStream;
  lDS: TzDecompressionStream;
begin
  lStr:=TStringStream.Create(aString);
  try
    lDS:=TzDecompressionStream.Create(lStr);
    try
      Application.ProcessMessages;
      SetLength(Result, lDS.Size);
      lDS.Read(Pointer(Result)^, lDS.Size);
    finally
      lDS.Free;
    end;
  finally
    lStr.Free;
  end;
end;
И соответственно в обработчике, вызываю:
Код:
Memo3.Text:=DecompressString(IdHTTP1.Get('URL страницы'))
Все работает отлично, только долго!!! Респонсе упакованный весит 50кб, распаковывается почти минуту... Может кто посоветует вариант быстрее!
Исходники программ - http:\\www.kort.3dn.ru
KORT вне форума Ответить с цитированием
Старый 12.03.2015, 14:28   #2
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

TIdCompressorZLib (вкладка Indy Misc) прикрепи к TIdHTTP
ZuBy вне форума Ответить с цитированием
Старый 12.03.2015, 14:36   #3
KORT
Вот я и
Форумчанин
 
Аватар для KORT
 
Регистрация: 07.04.2007
Сообщений: 501
По умолчанию

Цитата:
Сообщение от ZuBy Посмотреть сообщение
TIdCompressorZLib (вкладка Indy Misc) прикрепи к TIdHTTP
что-то не могу найти его в дельфях7
Исходники программ - http:\\www.kort.3dn.ru
KORT вне форума Ответить с цитированием
Старый 12.03.2015, 20:24   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

ZLib и GZip этот как бы два разных алгоритма сжатия.

Если строка на вход не в Base64, высока вероятность потерять часть данных где-то по пути.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модуль на Delhpi Andrey133Mhz Помощь студентам 1 17.12.2011 13:54
delhpi sergi Помощь студентам 1 24.02.2011 20:01
задача в Delhpi Яська Помощь студентам 3 19.09.2010 15:04
Delhpi C++Builder rus80bus Помощь студентам 2 21.08.2009 17:05
#Delhpi Одномерный массив forumu Помощь студентам 7 20.12.2007 22:36