ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

导出excel

2021-02-23 13:32:05  阅读:182  来源: 互联网

标签:sheet excel 导出 System Current file HttpContext Response


  public static  void  NPOIExportReport(  string [] titlearry, string  fileurl,DataTable dt)
        {
            FileStream fileStream = null;
            HSSFWorkbook workbook = new HSSFWorkbook();
            ISheet sheet = workbook.CreateSheet("sheet1");
            try
            {
                    sheet = workbook.GetSheetAt(0);
                    IRow row1 = sheet.CreateRow(0);

                    //表头
                    for (int m= 0; m< dt.Columns.Count; m++)
                    {
                        ICell cell = row1.CreateCell(m);
                        cell.SetCellValue(titlearry[m]);
                    }

                    for (int i=0;i<dt.Rows.Count;i++)
                    {
                        IRow row = sheet.CreateRow(i + 1);
                        for(int t = 0; t < dt.Columns.Count; t++)
                           {
                            ICell cell = row.CreateCell(t);
                            cell.SetCellValue(dt.Rows[i][t].ToString());
                            }
                    }

                    fileStream = System.IO.File.Create(fileurl);
                    workbook.Write(fileStream);
                    fileStream.Close();
                    downloadfile(fileurl);
            }
            catch (Exception  ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                if (workbook != null)
                    workbook.Close();
            }
            
        /// <summary>
        /// http页面包头
        /// </summary>
        public static void downloadfile(string s_path)
        {
            System.IO.FileInfo file = new System.IO.FileInfo(s_path);
            HttpContext.Current.Response.ContentType = "application/ms-download";
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.AddHeader("Content-Type", "application/octet-stream");
            HttpContext.Current.Response.Charset = "utf-8";
            HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(file.Name, System.Text.Encoding.UTF8));
            HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
            HttpContext.Current.Response.WriteFile(file.FullName);
            HttpContext.Current.Response.Flush();
            HttpContext.Current.Response.Clear();
            HttpContext.Current.Response.End();
        }

 

标签:sheet,excel,导出,System,Current,file,HttpContext,Response
来源: https://www.cnblogs.com/whl4835349/p/14435506.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有