Kun*_*Deo 3 iphone macos cocoa objective-c ios
我想知道如何使用NSUrl下载文件,其中文件名不可用或不是请求URL的一部分.我一直在寻找ASIHTTPRequest(http://allseeing-i.com/ASIHTTPRequest/)库.它有
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:@"/Users/ben/Desktop/my_file.txt"];
Run Code Online (Sandbox Code Playgroud)
但重点是你需要知道文件名.例如,如果你把URL(不是真正的URL)http://some-website/foo.pdf
它下载了一个文件foo.pdf,我想保存它.任何想法谢谢.
在NSURLConnection的委托回调- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response可以检索suggestedFileName从NSURLResponse.如果您对名称不了解,那么您需要为您的文件提供另一个名称.此时,您可以在开始保存数据之前指定下载路径.
suggestedFilename
返回响应数据的建议文件名.
- (NSString*)suggestFilename
回报价值
响应数据的建议文件名.
讨论
该方法尝试按顺序使用以下命令创建文件名:
使用内容处置标头指定的文件名.
URL的最后一个路径组件.
URL的主机.
如果无法将URL主机转换为有效文件名,则使用文件名"unknown".
在大多数情况下,此方法会根据MIME类型附加正确的文件扩展名.无论资源是否保存到磁盘,此方法都将始终返回有效的文件名.
可用性
适用于iOS 2.0及更高版本.在NSURLResponse.h中声明
| 归档时间: |
|
| 查看次数: |
9206 次 |
| 最近记录: |