这是我下载的一部分代码
Response.Clear(); Response.ContentType = "application/octet-stream"; Response.BinaryWrite(file.OpenBinary());
           
Response.End();
为什么我下载时候类型不是我原文件的类型,本来我的文件是.RAR类型的,结果下载的时候默认显示的却是。ASPX的了啊

解决方案 »

  1.   

    Response.AddHeader("Content-Disposition", "attachment; filename=zz.rar");
      

  2.   

    问题是我下载的类型是未知的啊, 如果你这样写那不就是默认的都是。RAR的了吗?》
      

  3.   

    string FileName = ""数据库读取或者从文件判断。
    Response.AddHeader("Content-Disposition", "attachment; filename="+FileName );
      

  4.   

    file.OpenBinary()
    这个file对象可以得到文件的扩展名字的
      

  5.   

    怎么可能未知, 代码写在服务器端, 它会不知道自己提供下载的文件是什么?
    本地的FileInfo或是存在数据库里, 都有个名字的.
      

  6.   

    问题1,我的下载的不是本地东西,是一个网络的URL,有些方法好象不可以,
    问题2,刚刚我按照E章的方法试了一下,就是在加了E章的一句话,还是不可以
      

  7.   

    就是相当与那个路径是 www.bac/def/aa.rar;
    有些方法就不可以,比如FileInfo
      

  8.   

    等于服务器是个中转站(盗链), 那不用写代码, 把下载的url提供给客户端就行了, 你这边只是公布个链接, 下载跟你那里没关系.
      

  9.   

    不是的,我们公司用的是SPS我们把文件是存在文档库里的
      

  10.   

    即使你知道那个URL也不可以下载下来的