public static void FileDownload(string FullFileName)
{
FileInfo DownloadFile = new FileInfo(FullFileName);
string conntentType = "";
switch (DownloadFile.Extension)
{
case ".asf":
conntentType = "video/x-ms-asf";
break;
case ".jpg":
case ".jpeg":
conntentType = "image/jpeg";
break;
case ".gif":
conntentType = "image/gif";
break;
case ".pdf":
conntentType = "application/pdf";
break;
case ".avi":
conntentType = "video/avi";
break;
case ".doc":
conntentType = "application/msword";
break;
case ".zip":
conntentType = "application/zip";
break;
case ".rar":
conntentType = "application/rar";
break;
case ".xls":
conntentType = "application/vnd.ms-excel";
break;
case ".wav":
conntentType = "audio/wav";
break;
case ".mp3":
conntentType = "audio/mpeg3";
break;
case ".mpg":
conntentType = "audio/mpeg";
break;
case ".rtf":
conntentType = "application/rtf";
break;
case ".htm":
case ".html":
conntentType = "text/html";
break;
case ".asp":
conntentType = "text/asp";
break;
default:
conntentType = "application/octet-stream";
break;
}
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.Buffer = false;
HttpContext.Current.Response.ContentType = conntentType;
HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + DownloadFile.Name);
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
HttpContext.Current.Response.WriteFile(FullFileName);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
{
FileInfo DownloadFile = new FileInfo(FullFileName);
string conntentType = "";
switch (DownloadFile.Extension)
{
case ".asf":
conntentType = "video/x-ms-asf";
break;
case ".jpg":
case ".jpeg":
conntentType = "image/jpeg";
break;
case ".gif":
conntentType = "image/gif";
break;
case ".pdf":
conntentType = "application/pdf";
break;
case ".avi":
conntentType = "video/avi";
break;
case ".doc":
conntentType = "application/msword";
break;
case ".zip":
conntentType = "application/zip";
break;
case ".rar":
conntentType = "application/rar";
break;
case ".xls":
conntentType = "application/vnd.ms-excel";
break;
case ".wav":
conntentType = "audio/wav";
break;
case ".mp3":
conntentType = "audio/mpeg3";
break;
case ".mpg":
conntentType = "audio/mpeg";
break;
case ".rtf":
conntentType = "application/rtf";
break;
case ".htm":
case ".html":
conntentType = "text/html";
break;
case ".asp":
conntentType = "text/asp";
break;
default:
conntentType = "application/octet-stream";
break;
}
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.Buffer = false;
HttpContext.Current.Response.ContentType = conntentType;
HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + DownloadFile.Name);
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
HttpContext.Current.Response.WriteFile(FullFileName);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
文章来源:http://blog.163.com/zkx_1022/blog/static/8806247200782121224804