下载前如何获取文件大小

Posted

技术标签:

【中文标题】下载前如何获取文件大小【英文标题】:How to get the file size before downloading 【发布时间】:2013-09-27 08:26:03 【问题描述】:

我正在尝试从 http: 服务器下载二进制文件。我正在使用函数InternetOpenUrl() 然后InternetReadFile() 来下载文件。是否可以在下载前知道文件的大小?

谢谢 维诺德

【问题讨论】:

【参考方案1】:

您可以为此使用HttpQueryInfo()HTTP_QUERY_CONTENT_LENGTH,尽管服务器不需要发送内容长度,因此您不应该依赖它。

【讨论】:

请注意,这不是必须的——HTTP 服务器不需要发送内容长度。你的代码不能依赖这个。【参考方案2】:

您可能希望在调用InternetOpenUrl 后调用InternetGetLastResponseInfo 以获取响应标头。这些应该(很可能)包含文件的content-length

【讨论】:

以上是关于下载前如何获取文件大小的主要内容,如果未能解决你的问题,请参考以下文章

iOS在下载前获取文件大小

上传前获取文件大小、图片宽度和高度

在开始下载之前,如何获取远程文件的大小?

如何使用 iPhone SDK 获取远程文件的大小?

在 vb.net 中获取下载文件的大小

如何从 Firebase 存储中获取调整大小的图片下载 URL