string filepath = Server.MapPath("../data/data.pdf");
//得到文件路径
string filename = GetFileName(filepath);
//得到文件名
//=========下面就看不懂了======================================================
FileStream filestream = new FileStream(filepath,FileMode.Open);
long filesize = filestream.Length;
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition","attachment; filename=\"" + filename + "\";");
Response.AddHeader("Content-Length",filesize.ToString());
//设置相应头和要保存的文件名byte[] filebuffer = new byte[filesize];
filestream.Read(filebuffer,0,(int)filesize);
Response.BinaryWrite(filebuffer);
//下载文件Response.End();
解决方案 »
- ASP在 ImageList 可以使用之前必须将它初始化(在线等)
- 很奇怪的异常错误,求助!!
- 请问在petshop4.0中的SQLServerDAL类库中,item,Category等类中的GetCommand是做甚么用的?
- 打印入库单问题
- 在datagird中用imagebutton触发事件怎样获取当前行的id?急啊!!!
- 请教在C#.net下做asp web application 如何设置全局变量?
- VS2010连不上SQL2008求解
- 请问,nvelocity 哪里有中文教程阿
- 怎么获取当前元素的十六进制颜色值
- ASP.NET中有多少个对象,有多少个控件?
- 急问:水晶报表导出问题
- 在aspx页面中不能解释<%=%>的问题
long filesize = filestream.Length;//取得文件的长度
//下面三行是为了能让客户端浏览器正确识别这个文件的类型和文件大小
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition","attachment; filename=\"" + filename + "\";");
Response.AddHeader("Content-Length",filesize.ToString());//将文件中的数据发送到客户端
byte[] filebuffer = new byte[filesize];
filestream.Read(filebuffer,0,(int)filesize);
Response.BinaryWrite(filebuffer);//结束这个请求
Response.End();