private void DownloadFile() 
{     
  
string path = Server.MapPath(Request.Params["File"]);
      
//string path = this.ApplicationRootPath + objNetDisk_Resource.ResURL;

      
if(!File.Exists(path)) 
      

       
// 文件没有找到
       
//Page.Response.Write ("文件不存在") ; 
       this.AlertMessage("下载文件不存在!","ViewMusic.aspx?FileID="+Request.QueryString["FileID"].ToString());
       
//       return; 
      }

      
else
      
{
       System.IO.FileInfo file 
= new System.IO.FileInfo(path);      

       
// clear the current output content from the buffer
       Response.Clear();
       
// add the header that specifies the default filename for the Download/SaveAs dialog
       Response.AddHeader("Content-Disposition""attachment; filename=" + HttpUtility.UrlEncode(file.Name,System.Text.Encoding.UTF8 ));
       
// add the header that specifies the file size, so that the browser
       
// can show the download progress
       Response.AddHeader("Content-Length", file.Length.ToString());
       
// specify that the response is a stream that cannot be read by the
       
// client and must be downloaded
       Response.ContentType = "application/octet-stream";
       
// send the file stream to the client
       Response.WriteFile(file.FullName);
       
// stop the execution of this page
       Response.End();
    }

}

posted on 2006-03-05 12:08  星火燎原  阅读(343)  评论(0编辑  收藏  举报