页面DownData
Dim Fi As New FileInfo(saveAsfileName)
        If Fi.Exists Then
            Dim fs As New FileStream(saveAsfileName, FileMode.Open)
            Dim bytes As Byte() = New Byte(CInt(fs.Length) - 1) {}
            fs.Read(bytes, 0, bytes.Length)
            fs.Close()
            Response.ContentType = "application/octet-stream"
            Response.AddHeader("Content-Disposition", "attachment; filename==" & System.Web.HttpUtility.UrlEncode("fileName.xls", System.Text.Encoding.GetEncoding("utf-8")))
            Response.BinaryWrite(bytes)
            Response.Flush()
            Response.[End]()            Response.Write("<script>window.close();</script>")   //下载完后即关闭本窗口
        End If想实现下载完后即关闭本窗口,我加了window.close(),但还是实现不了,咋回事?

解决方案 »

  1.   

    download.aspx 
    string fileName = "";//客户端保存的文件名
      string filePath = Server.MapPath("");//路径  FileInfo fileInfo = new FileInfo(filePath);
      Response.Clear();
      Response.ClearContent();
      Response.ClearHeaders();
      Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
      Response.AddHeader("Content-Length", fileInfo.Length.ToString());
      Response.AddHeader("Content-Transfer-Encoding", "binary");
      Response.ContentType = "application/octet-stream";
      Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
      Response.WriteFile(fileInfo.FullName);
      Response.Flush();
      Response.End();