[英]iPhone File system operation questions
我想从远程下载文件到临时文件夹
远程文件夹如:
http://remoteserver.com/abc/def/file1.txt
http://remoteserver.com/abc/file2.png
http://remoteserver.com/abc/pla/mnb/file3.html
文件夹结构如下:
tmpefolder/abc/def/file1.txt
tmpefolder/abc/file2.png
tmpefolder/abc/pla/mnb/file3.html
下载后,将文件移动到永久文件夹,并保持相同的文件夹结构
permanentfolder/abc/def/file1.txt
permanentfolder/abc/file2.png
permanentfolder/abc/pla/mnb/file3.html
最后删除临时文件夹中的所有文件
所以我的问题是:
从服务器下载多个文件的最佳方式是什么? (最好显示 ASIHTTPRequest,显示其他方式也可以)
创建整个文件夹结构的简便方法? 我是否必须用“/”拆分文件夹路径并检查每个级别路径是否存在并创建它?
如何将整个临时文件夹内容复制到永久文件夹? 是否可以通过 OS X 上的复制这样的操作来做到这一点?
另外,就像在 OS X 上删除操作一样,一次性删除临时文件夹?
谢谢!
1/ 你最好使用AFNetwork
。 ASIHTTPRequest
变老了,不再维护。 AFNetwork
更现代,并且可以使用块(“嗯,块”,就像 Homer 会说的那样)。 例子很多,自己搜索吧。
具体来说, AFNetwork
允许您将下载操作放在NSOperationQueue
中,您可以随意处理,比方说,并行下载 35 个文件,最多同时运行 4 个文件,并在一切完成后向您报告.
2, 3, 4/ 查看NSFileManager
的参考资料。 您需要的一切都在那里。
您所有文件的创建.zip 使用以下代码下载.zip 表单服务器。 这将在 NSTemporaryDirectory 中创建您的文件夹。
NSString *filePath = [NSString stringWithFormat:@"%@/FILENAME.zip",NSTemporaryDirectory()];
[[NSFileManager defaultManager] createFileAtPath:filePath contents:[NSData dataWithContentsOfURL:[NSURL URLWithString:[obj valueForKey:@"zip_path"]]] attributes:nil];
下载后将文件夹移动到文档目录。
[[NSFileManager defaultManager] moveItemAtPath:filePath toPath:[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] error:nil];
以下代码是从临时文件中删除文件
[[NSFileManager defaultManager] removeItemAtPath:filePath error:nil];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.