剑轩

asp.net mvc 下载文件

电脑版发表于:2019/9/11 11:10


方法1:

public void DownLoad()
{
    string filePath = "文件路径";
    using (FileStream fs = new FileStream(filePath, FileMode.Open))
    {
        byte[] bytes = new byte[(int)fs.Length];
        fs.Read(bytes, 0, bytes.Length);
        fs.Close();
        Response.Charset = "UTF-8";
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
        Response.ContentType = "application/octet-stream";

        Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode("TakeColor 8.0 CN Green.zip"));
        Response.BinaryWrite(bytes);
        Response.Flush();
        Response.End();
    }
}


tip:我们在做文件下载的时候应该要掩藏文件的真实地址,因为让用户知道了真实地址总是不太好的,下载我们就可以给一个downlowd控制器,我们可以不传递任何参数,具体的文件地址我们在后台处理,可以存储在session存储在缓存等,反正就是让前台看不到


真实存储的文件名也不要让用户知道,真实的文件名可以存储在数据库中,下载的时候后台用这个真实的名字通过流去查找,用户看的文件夹其实只是下载的时候给用户的一个名字



关于TNBLOG
TNBLOG,技术分享。技术交流:群号677373950
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢