2014-02-26 22 views
1

我新的iOS開發檢索文件到應用程序的臨時文件夾。我開發一個應用程序,它需要下載文件並保存,爲應用程序的臨時文件夾,我不知道該怎麼做我當前的代碼如下如何保存和IOS

NSURL *tmpDirURL = [NSURL fileURLWithPath:NSTemporaryDirectory() isDirectory:YES]; 
NSLog(@"%@",tmpDirURL); 
NSString *myString = [tmpDirURL absoluteString]; 
for(int i=0;i<responseArray.count;i++){ 
    ASIHTTPRequest *saveUrl = [ASIHTTPRequest requestWithURL:responseArray[i]]; 
    [saveUrl setDownloadDestinationPath:myString]; 
    [request startSynchronous]; 
} 
NSError * error; 
NSArray * directoryContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:myString error:&error]; 
NSLog(@"%@",directoryContents); 

給出的迴應陣列包含URL列表下載文件。我知道我的代碼一些錯誤,但我不能找出錯誤,請幫我解決這個問題

+2

你有什麼觀察?記錄錯誤變量。 – Wain

+0

作爲一個方面說明:ASIHTTPRequest是一個古老的圖書館,它的發展,幾年前停了下來。使用更新的東西比如AFNetworking可能是一個好主意。 –

回答

2

我找到了解決辦法」

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
     NSString *documentsDirectory = [paths objectAtIndex:0]; 
     NSString *htmlFilePath = [documentsDirectory stringByAppendingPathComponent:fileName]; 
     [data writeToFile:htmlFilePath atomically:YES]; 
+1

這是用戶的文檔文件夾,它不是用於存儲臨時文件。 – Shmidt

0

當downloadDestinationPath設置,該請求的結果將在這個位置下載該文件。如果沒有設置downloadDestinationPath,下載的數據將被存儲在內存中

NSURL *tmpDirURL = [NSURL fileURLWithPath:NSTemporaryDirectory() isDirectory:YES]; 
NSLog(@"%@",tmpDirURL); 
NSString *myString = [tmpDirURL absoluteString]; 
for(int i=0;i<responseArray.count;i++){ 
    ASIHTTPRequest *saveUrl = [ASIHTTPRequest requestWithURL:responseArray[i]]; 
    [saveUrl setDownloadDestinationPath:[myString stringByAppendingPathComponent:[NSString stringWithFormat:@"%i",i ]]; // for each file set a new location inside tmp 
    [request startSynchronous]; 
} 
NSError * error; 
NSArray * directoryContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:myString error:&error]; 
NSLog(@"%@",directoryContents);