public void ProcessRequest(HttpContext context)
        {
            //DownloadFile("教程.csv", "a.csv");

            context.Response.Charset = "UTF-8";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;
            context.Response.HeaderEncoding = System.Text.Encoding.UTF8;
            HttpContext.Current.Response.ContentType = "application/octet-stream";
            HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("测试.csv"));
            context.Response.BinaryWrite(new byte[] { 0xEF, 0xBB, 0xBF }); 

            context.Response.Write("编号,姓名\n1,邸萌");

            context.Response.Flush();
            context.Response.End();
        }

        #region 提供文件下载的方法【只限于服务器端已经存在的文件】
        /// <summary>
        /// 提供文件下载的方法【只限于服务器端已经存在的文件】
        /// </summary>
        /// <param name="fileName">一定要有后缀名。下载保存时文件的名称,可以与实际文件名称不相同,可以是中文</param>
        /// <param name="filePath">要下载文件的虚拟路径</param>
        public void DownloadFile(string fileName, string filePath)
        {
            HttpContext.Current.Response.ContentType = "application/octet-stream";
            HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName));
            HttpContext.Current.Response.WriteFile(filePath);
        }
        #endregion

posted on 2015-06-09 21:34  dianyitongxiao  阅读(142)  评论(0编辑  收藏  举报