Response.ClearHeaders();
Response.Clear();
Response.Expires = 0;
Response.Buffer = true;
Response.AddHeader("Accept-Language", "zh-tw");
string name = System.IO.Path.GetFileName(fullName);//fullName完整目录名称 得到的name为文件名
System.IO.FileStream fileStream = new FileStream(fullName, FileMode.Open, FileAccess.Read, FileShare.Read);
byte[] byteFile = null;
if (fileStream.Length == 0)
{
byteFile = new byte[1];
}
else
{
byteFile = new byte[fileStream.Length];
}
fileStream.Read(byteFile, 0, (int)byteFile.Length);
fileStream.Close();
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(name, System.Text.Encoding.UTF8));
Response.ContentType = "application/x-xls;charset=utf-8";
Response.BinaryWrite(byteFile);
Response.Flush();
Response.End();
Response.Clear();
Response.Expires = 0;
Response.Buffer = true;
Response.AddHeader("Accept-Language", "zh-tw");
string name = System.IO.Path.GetFileName(fullName);//fullName完整目录名称 得到的name为文件名
System.IO.FileStream fileStream = new FileStream(fullName, FileMode.Open, FileAccess.Read, FileShare.Read);
byte[] byteFile = null;
if (fileStream.Length == 0)
{
byteFile = new byte[1];
}
else
{
byteFile = new byte[fileStream.Length];
}
fileStream.Read(byteFile, 0, (int)byteFile.Length);
fileStream.Close();
Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(name, System.Text.Encoding.UTF8));
Response.ContentType = "application/x-xls;charset=utf-8";
Response.BinaryWrite(byteFile);
Response.Flush();
Response.End();
该博客介绍了如何在WebForm中实现文件下载。通过设置Response对象的属性,如ClearHeaders、Expires、Buffer等,以及添加Content-Disposition和Content-Type头,来触发浏览器下载文件。使用FileStream读取文件内容,并通过BinaryWrite写入响应流,最后结束响应。
580

被折叠的 条评论
为什么被折叠?



