2013-01-08 197 views
0

使用NSURLConnection以塊分區下載zip文件時出現問題。NSURLConnection下載大zip文件

-(void)connection: didReceiveData:(NSData *)data method.

有2種方法我都試過了,第一次是將所有數據追加到NSMutableData對象,並在最後調用writeToFile:atomically:。這適用於一個小視頻(14MB),但對於我下載的較大的視頻,記憶太多了。

第二種方法是在數據進入時調用writeToFile:atomically:,這似乎適用於下載,但不適用於解壓縮。這是首選的方法,但我不確定文件是否正確重建,因爲它不會解壓縮。

任何幫助將不勝感激,

+0

建議:不要在追加後在末尾調用writeToFile,而是嘗試調用writeToFile(將數據立即附加到文件中,而不是緩衝區中)。 –

回答

1

第二種方法似乎對我來說是正確的。如果內存太大,您肯定需要將數據寫入磁盤。絕不會影響您解壓縮的能力。所以我的猜測是你在解壓縮時出了問題。你使用SSZipArchive? (它實際上需要一個URL到你的zip文件,所以它需要保存在磁盤上)。