![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 13.01.2010
Сообщений: 121
|
![]()
Доброго времени суток. Столкнулся с такой проблемой:
Подскажите пожалуйста как вырезать из бинарного файла (его дамп по ссылке- http://image.openlan.ru/images/76164901642021320134.jpg) то что находится между 7f9 (Начало файла после заголовка ответа сервера) и концом файла, потом сохранить это в другой файл. Код:
Код:
Убрать сжатие GZIP (строку IdHTTP1.Request.AcceptEncoding := 'gzip,deflate';) - не предлагайте, интересует именно экономия трафика, но делаю это через сторонние компоненты, поэтому ищу свой вариант. Спасибо всем за внимание к посту, и большое спасибо всем ответившим. Последний раз редактировалось denis76560; 11.09.2012 в 20:59. Причина: ошибка в коде |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
я один не понял, что хочет ТС?
Во первых если вы 100% уверены в том, что сервер ответит GZIP то его надо сохранять никак не в строку, а в TSream т.к. из строки просто выпадет часть GZIP данных и все пойдет коту под хвост. Потом пишите стрим в файл. В третьих, в ответе Get|Post нет HTTP заголовка ответа сервера, только данные. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 13.01.2010
Сообщений: 121
|
![]()
проблема в том что сервант может и на мой реквест IdHTTP1.Request.AcceptEncoding := 'gzip,deflate';
ответиль не сжатым контетом, поэтому и проверяю наличие в заголовке ответа сервера. В этом случае пытаюсь его сохранить в файл, но вся проблема в том что он сохраняет не сам контент ответа а сохраняет его вместе с заголовком сервера. Мне самое главное - отрезать сервантовский заголовок. по этой теме нашел - http://www.delphimaster.net/view/1-1193526029 (последний пост этой темы), но вся трабла в том что, даже имея в файле сохраненный ответ сервера с его заголовком, я не могу его правильно загрузить в переменную Ansistring... Там в сохраненном файле бинарник, как не пытался - не получается.. Последний раз редактировалось denis76560; 11.09.2012 в 21:38. Причина: ошибка |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Что бы избавиться от сжатия можно сделать так IdHTTP1.Request.AcceptEncoding := 'text/html'; и еще проверяйте на разделитель заголовка в HTTP это #13#10#13#10 обрабатываете полученное на этот разделитель.
простенький примерчик подправил вашу функцию Код:
Последний раз редактировалось Aliens_wolfs; 13.09.2012 в 09:18. |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 13.01.2010
Сообщений: 121
|
![]()
решено, всем спасибо.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Записать бинарник из строки | Unconnected | Общие вопросы Delphi | 21 | 12.07.2011 17:02 |
компиляция в чистый бинарник | Hell Knight | Общие вопросы C/C++ | 5 | 23.03.2011 19:50 |
файловый поток. Открыть\создать бинарник | Darth.Vader | Общие вопросы C/C++ | 16 | 29.12.2009 22:04 |
txt в бинарник и обратно | cowboy | Общие вопросы Delphi | 9 | 16.09.2009 10:54 |
Как выяснить каким образом обрабатывается бинарник | yarilo | Помощь студентам | 1 | 22.04.2009 09:57 |