如何计算上传文件的百分比

本文关键字:文件 百分比 何计算 计算 | 更新日期: 2023-09-27 18:27:25

我需要计算上传到服务器的文件的百分比。我读起来像

上传百分比=100/文件大小*上传字节。

有人知道我们如何从文件上传控件的属性中获得以下内容吗:

  1. 上传文件的大小
  2. 上传的字节数

请帮忙。谢谢

如何计算上传文件的百分比

"有人知道我们如何从文件上传控制"

如果正如您在评论中所说,您使用的是标准的.NET文件上传控件,那么只有在文件完全上传后,您才会获得服务器端的post事件。

也就是说:在浏览器完全上传文件之前,不会触发任何服务器端事件

要获得渐进式上传,您要么需要使用一个组件,比如其他答案中链接的组件,要么编写自己的HTTP模块。

示例项目(如果有效则未验证)http://www.codeproject.com/Articles/14832/ASP-NET-file-post-direct-to-disk-with-upload-file

旁注:进度%是这样计算的:上传字节/总字节

HTML规范版本4不允许在没有页面张贴的情况下上传文件,您需要依靠服务器代码来获得上传的数据量,然而HTML5规范为XMLHttpRequest提供了新的功能,称为XMLHttpRequest2。XMLHttpRequest有一个上传属性,您可以在其中访问一些用于上传数据的客户端事件,如onpress、onload等等。你可以在这里阅读:http://www.html5rocks.com/en/tutorials/file/xhr2/

以下是在所有主要浏览器中支持XMLHttpRequest2的兼容性表:http://caniuse.com/xhr2

看起来你需要一个jquery魔术,比如:

http://blueimp.github.com/jQuery-File-Upload/

http://www.webappers.com/2011/01/24/jquery-file-upload-with-upload-progress-bar/

http://www.codeproject.com/Articles/301420/Use-jQuery-Uploader-To-Display-File-Upload-Progres