SqlDataReader dr = command.ExecuteReader();
if(dr.Read())
{
Response.Clear();
Response.BinaryWrite((byte[])dr["MyFile"]);
}
dr.Close();
myconn.Close();
}
如果我上传的是图片这样可以浏览,如果是文件我如何下载呢。
if(dr.Read())
{
Response.Clear();
Response.BinaryWrite((byte[])dr["MyFile"]);
}
dr.Close();
myconn.Close();
}
如果我上传的是图片这样可以浏览,如果是文件我如何下载呢。
解决方案 »
- 网页位置
- 一道面试题,请各位答一答,asp.net的实现原理是怎样的
- 请扩展JS中Array的功能 让其也能实现类似于C#中ArrayList的功能
- 请教高手一个问题!
- 给点意见
- 如何在导出的excel中头部和底部加入表头和表尾??
- 求中文转化为英文的兼容java又兼容c#的方案
- 我有一个在WIN2003下开发ASP.NET的问题
- 未能启动aspnet_wp.exe,原因是配置文件的processModel节中提供的用户名和/或密码无效。
- datagrid 中datakeys所表达的关键字问题
- 如何得到用户控件的客户端ID 或者name 也可以! 急 急 急 急 急急急急急急急急
- 怎样取得动态生成tabel的行里面的控件的值
{
HttpContext context = HttpContext.Current;
Byte[] buffer = new Byte[10000];
int ReadLength;
long TotleLength;
Stream Fstream = null;
try
{
if(!File.Exists(srcFile))
throw new Exception("file were not found."); string filename = Path.GetFileName(srcFile); Fstream = new FileStream(srcFile,
FileMode.Open,
FileAccess.Read,
FileShare.Read);
TotleLength = Fstream.Length;
context.Response.ContentType = "Application/octec-stream";
context.Response.AddHeader("Content-Disposition",String.Concat("Attachment;filename=",HttpUtility.UrlEncode(filename))); long p = 0;
if(context.Request.Headers["Range"]!=null)
{
context.Response.StatusCode = 206;
p = long.Parse(context.Request.Headers["Range"].Replace("bytes=","").Replace("-",""));
}
if(p != 0)
{
context.Response.AddHeader("Content-Range","bytes " + p.ToString() + "-" + ((long)(TotleLength - 1)).ToString() + "/" + TotleLength.ToString());
}
context.Response.AddHeader("Content-Length",((long)(TotleLength-p)).ToString());
Fstream.Position = p;
TotleLength = TotleLength - p; while(TotleLength > 0)
{
if(context.Response.IsClientConnected)
{
ReadLength = Fstream.Read(buffer,0,10000);
context.Response.OutputStream.Write(buffer,0,ReadLength);
context.Response.Flush();
buffer = new Byte[10000];
TotleLength -= ReadLength;
}
else
{
TotleLength = -1;
}
}
}
catch(Exception ex)
{
FileExplorer.FileError.ShowAlertMessage(ex.Message);
}
finally
{
if(Fstream != null)
{
Fstream.Close();
}
context.Response.End();
}
}