gpt4 book ai didi

objective-c - 如何从文件名不是 URL 一部分的 URL 下载文件(iOS/Cocoa SDK)

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:24:25 24 4
gpt4 key购买 nike

我想知道如何在文件名不可用或不属于请求 URL 的情况下使用 NSUrl 下载文件。我一直在查看 ASIHTTPRequest (http://allseeing-i.com/ASIHTTPRequest/) 库。它有

ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:@"/Users/ben/Desktop/my_file.txt"];

但关键是你需要知道这里的文件名。例如,如果您输入 URL(不是真实的 URL)http://some-website/foo.pdf

它下载了一个文件 foo.pdf,我想这样保存它。任何想法谢谢。

最佳答案

在 NSURLConnection 委托(delegate)回调 - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response 中,您可以从 NSURLResponse 检索 suggestedFileName .如果你不知道名字,那么你需要为你的文件想出另一个名字。此时您可以在开始保存数据之前指定下载路径。

suggestedFilename

Returns a suggested filename for the response data.

  • (NSString *)suggestedFilename

Return Value

A suggested filename for the response data.

Discussion

The method tries to create a filename using the following, in order:

  1. A filename specified using the content disposition header.

  2. The last path component of the URL.

  3. The host of the URL.

If the host of URL can't be converted to a valid filename, the filename “unknown” is used.

In most cases, this method appends the proper file extension based on the MIME type. This method will always return a valid filename regardless of whether or not the resource is saved to disk.

Availability

Available in iOS 2.0 and later. Declared In NSURLResponse.h

关于objective-c - 如何从文件名不是 URL 一部分的 URL 下载文件(iOS/Cocoa SDK),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5436599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com