|
很多时候我们去做文件上传,做完上传觉得文件下载变得非常简单, 但很多时候下载会出乱码名称等一系列问题,自己做了个下载,把各个类中的源码放一起了 可能有点乱,各位包含,其实主要是为了我自己以后用的方便,放到这里 下载方法:
string filePath = thesisInfo.ThesisUrl.ToString().Trim(); //获取文件名
string Path = "";
if (Convert.ToInt32(Request["TYPE"]) == 1)
 ...{
//返回服务器上的物理路径,UpLoadURL是获取WEBCONFIG里配置的一个路径,是下面的那个静态方法
Path = Server.MapPath(UpLoadFile.UpLoadURL + "ThesisFiles/") + filePath;
}
if (System.IO.File.Exists(Path)) //判断路径是否存在
 ...{
string temp = string.Format("attachment;filename={0}", Server.UrlEncode(filePath));
Response.ClearHeaders();
Response.AppendHeader("Content-disposition", temp);

Response.WriteFile(HttpUtility.UrlDecode(Path, System.Text.Encoding.UTF8));//解析文件名防止乱码
Response.End();
}
else
 ...{
Response.Write("该文件不存在!");
}
public static String UpLoadURL
 ...{
get
 ...{
//获取WEBCONFIG上配置的哪个路径,可以自己写
string stemp = ConfigurationManager.AppSettings[SystemConst.KEY_UpLoad];
if (stemp == null)
 ...{
return SystemConst.DEFAULT_UpLoad;
}
else
 ...{
return stemp;
}
}
}
| |