我们如何将文件从服务器下载到iphone中的文档目录?

时间:2009-10-06 20:09:23

标签: iphone

我想使用API​​从服务器下载文件,因为我发送请求,该链接上的内容到达iphone / ipod touch中的文档目录,下载后可以从文档目录中删除它们。有没有办法做这样的事情。

由于 Balraj

3 个答案:

答案 0 :(得分:3)

最简单的方法是使用ASIHTTPRequest并执行:

ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[request setDownloadDestinationPath:@"{path to file in documents folder}"]];
[request startAsynchronous];

...

- (void)requestFinished:(ASIHTTPRequest *)request 
{
 // Downloaded file is ready for use
}

- (void)requestFailed:(ASIHTTPRequest *)request
{
 // Download failed. This is why.
 NSError *error = [request error];
}

答案 1 :(得分:3)

NSData *data = [NSData dataWithContentsOfURL:@"http://site.com/filename"];

NSArray  *docList = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentDir  = [docList objectAtIndex:0];
NSString *documentPath = [historicDocumentDir stringByAppendingPathComponent:@"filename"];

[data writeToFile:documentPath atomically:NO];

添加错误检查。

答案 2 :(得分:3)

要从文档文件夹中删除文件,请使用:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:fileName];
[[NSFileManager defaultManager] removeItemAtPath:path error:nil];