#c_sharp #post #get
Здравствуйте есть файл с ответом на get запрос в нем находится информация от сервера и дальше через пустую строку набор символов, которое судя по всему является изображением. Вопрос как мне файл этот преобразовать в jpeg изображение. это файл с гет запросом! GET /7212330m.png HTTP/1.1 Host: savepic.org Connection: keep-alive Accept: image/webp,*/*;q=0.8 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.172 Safari/537.36 Accept-Encoding: gzip, deflate, sdch Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4 Range: bytes=57180-57180 If-Range: Sun, 03 May 2015 14:44:13 GMT а это файл с ответом на него: HTTP/1.1 206 Partial Content Server: nginx/1.0.15 Date: Wed, 05 Oct 2016 10:40:32 GMT Content-Type: image/jpeg Content-Length: 1 Last-Modified: Sun, 03 May 2015 14:44:13 GMT Connection: keep-alive Content-Range: bytes 57180-57180/180675 UHTTP/1.1 206 Partial Content Server: nginx/1.0.15 Date: Wed, 05 Oct 2016 10:40:33 GMT Content-Type: image/jpeg Content-Length: 123495 Last-Modified: Sun, 03 May 2015 14:44:13 GMT Connection: keep-alive Content-Range: bytes 57180-180674/180675 UґыГ8r~q!AnзПёzчv·µмbIЅ\2Ћ’Jj'™GЁJ'$:;љ•U"Бk}Я‹к±И)Љ\"ЅЈтq· и так далее
Ответы
Ответ 1
Если не применялось специальных методов кодирования (проверьте заголовки Content-Encoding и Transport-Encoding) - то достаточно обрезать заголовки. Следите за окончаниями строк - нельзя позволять выбранному инструменту их заменять на "нужные". Проверить, как ведет себя ваш инструмент с окончаниями строк можно открыв файл с запросом и сразу же сохранив обратно. Размер файла не должен поменяться. Также обратите внимание на заголовок запроса Range и заголовок ответа Content-Range. Ваш файл загружался по частям. PS как вы получили файл с "сырым" запросом? Если у вас есть возможность повторить эксперимент, я бы советовал использовать fiddler для просмотра запросов.Ответ 2
Если полученный текст действительно изображение, то такой код конвертирует его public Image imageFromByte(byte[] byteArrayIn) { MemoryStream ms = new MemoryStream(byteArrayIn); Image returnImage = Image.FromStream(ms); return returnImage; } А дальше уже можно сохранить её в нужном формате
Комментариев нет:
Отправить комментарий