时间:2016-02-16 02:54 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【Asp.net中断点续传的原理与实现方法分享】,下面是详细的讲解!
Asp.net中断点续传的原理与实现方法分享
private void Page_Load(object sender, System.EventArgs e)
{
string file=MapPath("ff.zip");
FileInfo fi=new FileInfo (file);
long startPos=0;
//所传输的文件长度
long fileTranLen=fi.Length;
//断点续传请求
if (Request.Headers["Range"] !=null)
{
Response.StatusCode=206;
startPos=long.Parse(Request.Headers["Range"].Replace("bytes=", "").Split('-')[0]);
fileTranLen -=startPos;
//Response.AddHeader("Accept-Ranges", "bytes");
//Content-Range: bytes [文件块的开始字节]-[传输文件的总大小]/[文件的总大小]
Response.AddHeader("Content-Range", string.Format("bytes {0}-{1}/{2}",startPos,fileTranLen,fi.Length));
}
Response.AddHeader("Content-Length", fileTranLen.ToString());
//基本的文件下载报文头
Response.ContentType="application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + fi.Name);
//简单的流拷贝
System.IO.Stream fileStream=System.IO.File.OpenRead(file);
fileStream.Position=startPos;
byte[] buffer=new Byte[1024];
int count;
while ((count=fileStream.Read(buffer, 0, buffer.Length)) > 0)
{
Response.OutputStream.Write(buffer, 0, count);
}
fileStream.Close();
Response.End();
}
关于Asp.net中断点续传的原理与实现方法分享的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【ASP】ASP.NET中内嵌页面代码的一个问题-NET-内
- 【As】Asp.net中的页面乱码的问题-sp--pn-ne-et
- 【增加记录】asp.net中获取新增加记录的ID Access
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【404页面】ASP.NET设置404页面返回302HTTP状态码
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
