Как я могу сделать полные данные при использовании NSURLConnection - PullRequest
0 голосов
/ 01 марта 2012

как я могу сделать полные данные при использовании NSURLConnection?

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
}

вставить части NSData? Что я должен делать ясно, я хочу загрузить файл с URL-адреса в мой каталог документов, и я хочу знать, сколько байт было загружено, чтобы завершить, что является лучшим способом?

1 Ответ

2 голосов
/ 01 марта 2012

Создайте NSMutableData и добавьте его при получении данных.

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data  {
    if (responseData == nil)  {
        responseData = [[NSMutableData data] retain];
    }
    [responseData appendData:data];
}

Или

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    responseData = [[NSMutableData data] retain];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data  {
    [responseData appendData:data];
}

Затем разберитесь с этими данными в connectionDidFinishLoading

Не забудьте освободить данные и соединение, как только закончите.

Более подробно вы можете обратиться к этому документу: https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/URLLoadingSystem/Tasks/UsingNSURLConnection.html

...