2009-12-04 10 views
0

Как получить размер файла CFHTTPStream. Предположим, что файл, который называется «http://testserver.com/test.jpg», доступен для чтения. Здесь мне нужно получить размер файла «test.jpg», мне нужно показать прогресс при использовании CFReadStreamRead.получить размер файла CFHTTPStream

Или, другими словами, мне нужно, сколько байтов доступно на сервере
перед началом процесса чтения.

Заранее спасибо

Mohsin

ответ

0

Вы хотите получить заголовок сообщения из потока Thusly:

CFHTTPMessageRef message = CFReadStreamCopyProperty(requestStream, kCFStreamPropertyHTTPResponseHeader); 

, а затем скопировать из поля заголовка:

CFDictionaryRef headerFields = CFHTTPMessageCopyAllHeaderFields(message); 

и затем возьмите поле длины содержимого из словаря.

Я не полностью помню конкретное имя поля, поэтому дамп dict & захватить тот, который выглядит правильно. Вам нужно будет прочитать хотя бы немного потока, чтобы получить заголовок.