ASP.NET C# 文件上传速度限制
2013-05-16 12:34
357 查看
这个是一个Restful上传文件的实现方法,我们可以在上传过程中通过线程等待来现实限速功能
/// <summary> /// 上传 /// </summary> /// <param name="fileName"></param> /// <param name="fileStream"></param> public void FileUpload(string fileName, Stream fileStream) { FileStream fileToupload = new FileStream("D:\\FileUpload\\" + fileName, FileMode.Create); int _speed = 1024 * 1024; // 1M/S int pack = 10240; //10K bytes byte[] bytearray = new byte[pack]; double limit = 1000 / (_speed / pack); // 限速时每个包的时间 int bytesRead, totalBytesRead = 0; do { Stopwatch wa = new Stopwatch(); wa.Restart(); bytesRead = fileStream.Read(bytearray, 0, bytearray.Length); totalBytesRead += bytesRead; wa.Stop(); if (wa.ElapsedMilliseconds < limit) //如果实际带宽小于限制时间就不需要等待 { Thread.Sleep((int)(limit - wa.ElapsedMilliseconds)); } } while (bytesRead > 0); fileToupload.Write(bytearray, 0, bytearray.Length); fileToupload.Close(); fileToupload.Dispose(); }
相关文章推荐
- ASP.NET C# 文件下载速度限制
- FCKeditor 上传修改,添加对文件的类型以及大小的限制(ASP.NET C#)
- FCKeditor 上传修改,添加对文件的类型以及大小的限制(ASP.NET C#)
- c# asp.net uploadify 上传大文件 出现的 HTTP 404 问题
- asp.net,C#,html控件的File控件实现多文件上传简单实例,vs2010
- Asp.Net配置Web.Config更改默认上传文件大小限制!(适用于win7\win2003的IIS)
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- ASP.NET中上传文件过大时限制上传问题的解决
- [ASP.NET] 限制上传文件类型的两种方法(转)
- asp.net/c# 用<input type="file" />实现文件上传,multipart/form-data
- asp.net(C#)上传下载及文件管理代码(续)
- ASP.NET(C#)实现一次性上传多张图片(多个文件)
- ASP.NET提供文件下载函数(支持大文件、续传、速度限制、资源占用小)
- ASP.NET提供文件下载函数(支持大文件、续传、速度限制、资源占用小)
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- 解决ASP.NET上传文件大小限制
- ASP.NET 2.0(C#)实现多文件上传
- 解决ASP.NET上传文件大小限制
- 收藏:ASP.NET提供文件下载函数(支持大文件、续传、速度限制、资源占用小)
- Asp.Net修改上传文件大小限制方法