文件下载解决中文乱码
if (File.Exists(path))
{
if (!".zip.rar.".Contains(Path.GetExtension(path) + "."))
{
Response.Write("不允许此类文件的下载!");
return;
}
string name = Path.GetFileName(path);
if (string.IsNullOrEmpty(name))
{
name = new FileInfo(path).Name;
}
Response.Clear();
if (Request.Browser.Browser == "IE")
{
name= HttpUtility.UrlPathEncode(name);
}
Response.AddHeader("Content-Disposition",
"attachment;filename=\"" +name + "\"");
byte[] buffer = File.ReadAllBytes(path);
Response.AddHeader("Content-Length", buffer.Length.ToString());
Response.ContentType = "application/zip;charset=utf-8";
Response.BinaryWrite(buffer);
}
else
{
Response.Write(string.Format("文件{0}不存在!", path));
}
//另外需注意打开此页面时应使用window.location.href
而不用window.open,浏览器会拦截弹出窗口