2012-03-01 9 views
0

NSURLConnectionを使用しているときに完全なデータを作成するにはどうすればよいですか?NSURLConnectionを使用しているときに完全なデータを作成する方法

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

NSDataのペースト部分は? 私は明確に何をすべきですか?私はurlアドレスから私のドキュメントディレクトリにファイルをダウンロードしたいのですが、何が最良の方法を完了するためにダウンロードされたバイト数を知りたいのですか?

答えて

2

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

+0

responseDataとは何ですか? – mamrezo

+0

私は私の答えを更新しました、responseData NSMutableDataのインスタンスです – Hanon

関連する問題