使用分块 http 传输时获取总文件长度

发布于 2024-11-14 07:18:01 字数 95 浏览 5 评论 0原文

我用 Java 编写了一个程序,使用分块通过 http 下载大文件。一切工作正常,但我想添加一个进度条,除非获得文件的总长度,否则我无法做到这一点。有什么办法可以做到这一点吗?

I've written a program in Java to use chunking to download large files over http. Everything is working fine but I'd like to add a progress bar which I can't do unless I get the total length of the file. Is there any way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

仅一夜美梦 2024-11-21 07:18:01

如果服务器提供 Content-Length 标头字段,那么这很容易。如果没有,那么你就不走运了。

当内容是静态的并且具有已知的大小时,合理的服务器实现提供Content-Length。如果内容是动态生成的,那么就不可能先验地知道长度,至少在不两次遍历数据的情况下是不可能的。

If the server provides a Content-Length header field, then that's easy. If it doesn't, then you're out of luck.

Reasonable server implementations provide Content-Length when the content is static and has a known size. If the content is dynamically generated, then it's impossible to know the length a priori, at least without making two passes through the data.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文