2012-03-09 40 views
5

我需要计算上传到服务器的文件的百分比。我读它就像如何计算上传文件的百分比?

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

有谁知道怎么才能得到一个文件上传控件的属性如下:

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

请帮助。谢谢

回答

4

“有谁知道,我们怎么能得到从 一个文件上传控件的属性如下:”如果,你已经在评论中说,您使用的是标准的

。 NET文件上传控件,那么当文件被完全上传时,你只能得到服务器端的发布事件。

即:在文件完全由浏览器上传之前,您的服务器端事件都不会触发。

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

实施例项目(如果未经验证的工作)http://www.codeproject.com/Articles/14832/ASP-NET-file-post-direct-to-disk-with-upload-file

边注:进度%计算如下所示:上载的字节/总字节

1

直到第4版的HTML规范,不允许你在没有页面发布的情况下上传文件,你需要依靠服务器代码来获取上传的数据量,但是HTML5规范带有XMLHttpRequest的新功能作为XMLHttpRequest2。 XMLHttpRequest有一个上传属性,您可以在其中访问一些用于上传数据的客户端事件,如onprogress,onload等等。 你可以在这里阅读: http://www.html5rocks.com/en/tutorials/file/xhr2/

这里的所有主流浏览器的支持XMLHttpRequest 2的兼容性表: http://caniuse.com/xhr2