是这样的。我在前台有一个下载的按钮。后台是这样的
protected void Button1_Click(object sender, EventArgs e)
{
string fileName = Request.QueryString["FileName"].ToString();
try
{
string fileserverpath = Server.MapPath("~/Up_down/" + fileName);
FileInfo fi = new FileInfo(fileserverpath);
fi.Attributes = FileAttributes.Normal;
FileStream filestream = new FileStream(fileserverpath, System.IO.FileMode.Open);
long filesize = filestream.Length;
int i = Convert.ToInt32(filesize);
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.AddHeader("Content-Length", filesize.ToString());
byte[] fileBuffer = new byte[i];
filestream.Read(fileBuffer, 0, i);
filestream.Close();
Response.BinaryWrite(fileBuffer);
}
catch
{
//下载失败;
} //finally
//{
// Response.Redirect("File_study_List.aspx");
//}现在问题是。点击这个按钮,可以弹出保存文件的对话框,但点对话框的保存或者取消后,这个页面就自动关闭了。但我是想不要关闭这个页面。请问这个要怎么实现?
protected void Button1_Click(object sender, EventArgs e)
{
string fileName = Request.QueryString["FileName"].ToString();
try
{
string fileserverpath = Server.MapPath("~/Up_down/" + fileName);
FileInfo fi = new FileInfo(fileserverpath);
fi.Attributes = FileAttributes.Normal;
FileStream filestream = new FileStream(fileserverpath, System.IO.FileMode.Open);
long filesize = filestream.Length;
int i = Convert.ToInt32(filesize);
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
Response.AddHeader("Content-Length", filesize.ToString());
byte[] fileBuffer = new byte[i];
filestream.Read(fileBuffer, 0, i);
filestream.Close();
Response.BinaryWrite(fileBuffer);
}
catch
{
//下载失败;
} //finally
//{
// Response.Redirect("File_study_List.aspx");
//}现在问题是。点击这个按钮,可以弹出保存文件的对话框,但点对话框的保存或者取消后,这个页面就自动关闭了。但我是想不要关闭这个页面。请问这个要怎么实现?
Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(FileName, System.Text.Encoding.GetEncoding("utf-8")));
Response.ContentType = "application/octet-stream";
Response.WriteFile("" + path + "");
Response.End();
下载,页面没问题