string fileName = "downLoadFile.txt";
string filePath = context.Server.MapPath("downLoadFile.txt");
这两个地方填的到底是什么?下载后文件存放的位置,还是服务端被下载的文件。如果是被下载的文件,那么文件下载下来到哪了。
如果是下载下来存放文件的路径,那么这段程序到if (fileinfo.Exists == true)就执行不下去
string fileName = "downLoadFile.txt";
string filePath = context.Server.MapPath("downLoadFile.txt");
FileInfo fileinfo = new FileInfo(filePath);
if (fileinfo.Exists == true)
{
const long size = 102400;
byte[] buffer = new byte[size];
context.Response.Clear();
FileStream fileStream = File.OpenRead(filePath);
long fileLength = fileStream.Length;
context.Response.ContentType = "application/octet-stream";
context.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName));
//如果客户端连在服务器上
while (fileLength > 0 && context.Response.IsClientConnected)
{
int lengthRead = fileStream.Read(buffer, 0, Convert.ToInt32(size));
context.Response.OutputStream.Write(buffer, 0, lengthRead);
context.Response.Flush();
fileLength = fileLength - lengthRead;
}