【问题标题】:How to get the size of a remote file with iPhone SDK?如何使用 iPhone SDK 获取远程文件的大小?
【发布时间】:2009-07-09 14:45:37
【问题描述】:

我的 iPhone 应用程序从 Internet 下载大文件(例如视频)。

我想显示一个进度条,所以我需要获取我尝试下载的远程文件的大小(当然是在下载之前)。

我搜索了一遍又一遍,但没有任何效果。有什么办法吗?

提前谢谢你。

【问题讨论】:

标签: iphone file size


【解决方案1】:

如果您使用的是 URL 加载系统(NSURLRequest、NSURLConnection 等),请查看 NSURLConnection 的 expectedContentLength 是否有值。请注意,它可能是 NSURLResponseUnknownLength。

【讨论】:

    【解决方案2】:

    好的,我终于得到答案了。

    NSURLConnection 调用它的委托

    - (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;
    

    好吧,我们需要查看 NSURLResponse 内部,找到预期的ContentLength

    - (long long)expectedContentLength
    

    返回值 接收者的预期内容长度,如果无法确定长度,则为 NSURLResponseUnknownLength。

    【讨论】:

      【解决方案3】:

      您需要一些机制让服务器向您报告大小。

      我希望大多数服务器在响应中提供内容长度标头条目。那应该告诉你文件有多大。我假设您用于下载的任何类都会向您公开该信息。

      【讨论】:

        猜你喜欢
        • 2023-03-04
        • 2021-09-11
        • 2015-03-05
        • 1970-01-01
        • 2023-03-28
        • 1970-01-01
        • 2011-05-28
        • 2019-04-27
        • 1970-01-01
        相关资源
        最近更新 更多