1. 程式人生 > >ASP.NET使用檔案流的方式下載檔案

ASP.NET使用檔案流的方式下載檔案

               //以字元流的形式下載檔案

                string filePath = "D://dome.doc";
                FileStream fs = new FileStream(filePath , FileMode.Open);
                byte[] bytes = new byte[(int)fs.Length];
                fs.Read(bytes, 0, bytes.Length);
                fs.Close();
                Response.ContentType = "application/octet-stream";

                string suffix = filePath.Trim().Substring(filePath.Trim().LastIndexOf("."));
                string fileName = Guid.NewGuid().ToString() + suffix;//儲存的檔名
                //通知瀏覽器下載檔案而不是開啟
                Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
                Response.BinaryWrite(bytes);
                Response.Flush();
                Response.End();