0

MKNetworkKit(iOS7)で大きなファイルをダウンロードしようとしています。現在、以下のコードを使用しています。

- (MKNetworkOperation*)downloadFile: (NSString*)url :(NSString*)output {
     NSString* fullPath = [documentsPath stringByAppendingPathComponent:output];
     MKNetworkOperation *op = [self operationWithURLString:url params:nil httpMethod:@"GET"];
     [op addDownloadStream:[NSOutputStream outputStreamToFileAtPath:fullPath append:NO]];
     return op;
 }

次に、次のように別のクラスからこれを呼び出します。

Tools *dl = [[Tools alloc]init];
    MKNetworkOperation* op = [dl downloadFile:someURL :[documentsPath stringByAppendingPathComponent:@"someFile.txt"]];
    [op onDownloadProgressChanged:^(double prog) {
        progressView.progress = prog;
        progressLabel.text = [NSString stringWithFormat:@"%.1f%%",prog*100];
    }];
    [op addCompletionHandler:^(MKNetworkOperation *completedOperation){
        //Downloaded file completed here
    } errorHandler:^(MKNetworkOperation *completedOperation, NSError *error){
        NSLog(@"%@", error);
    }];
    [dl enqueueOperation: op];

ダウンロードが完了すると、ドキュメント フォルダにファイル名が表示されますが、ファイルはゼロ バイトで空です。MKNetworkKit は大きなファイルのダウンロードを嫌いますか?

4

1 に答える 1

1

エラーが見つかりました。誤って出力ファイルを間違った場所に置いてしまったようです。フォルダーが存在しないため、MKNetworkKit はそれをドキュメント フォルダーに書き込みませんでした。正しいパスを指定すると解決しました。

于 2013-10-15T14:22:39.807 に答える