1*NPOI导出多个sheetExcel案例

 protected void Button1_Click(object sender, EventArgs e)
        {
            MemoryStream formateStrem = test2();
            byte[] stremByte = formateStrem.ToArray();
            formateStrem.Dispose();//非托管资源流对象 手动释放
            Response.ClearContent();
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            //设置输出流
            Response.ContentType = "application/octet-stream";
            Response.AddHeader("Content-Disposition", "attachment;fileName=" + "test.xls");
            Response.BinaryWrite(stremByte);
        }
        private MemoryStream test2()
        {
            MemoryStream sss = new MemoryStream();
            HSSFWorkbook workBook = new HSSFWorkbook();
            createSheet(workBook, "SheetA");
            createSheet(workBook, "SheetB");
            createSheet(workBook, "SheetC");
            workBook.Write(sss);
            return sss;
        }

        private ISheet createSheet(HSSFWorkbook workBook, string sheetName)
        {
            ISheet sheet = workBook.CreateSheet(sheetName);
            IRow RowHead = sheet.CreateRow(0);

            for (int iColumnIndex = 0; iColumnIndex < 10; iColumnIndex++)
            {
                RowHead.CreateCell(iColumnIndex).SetCellValue(Guid.NewGuid().ToString());
            }

            for (int iRowIndex = 0; iRowIndex < 20; iRowIndex++)
            {
                IRow RowBody = sheet.CreateRow(iRowIndex + 1);
                for (int iColumnIndex = 0; iColumnIndex < 10; iColumnIndex++)
                {
                    RowBody.CreateCell(iColumnIndex).SetCellValue(DateTime.Now.Millisecond);
                    sheet.AutoSizeColumn(iColumnIndex);
                }
            }
            return sheet;
        }

 

posted @ 2017-06-07 16:02  七秒钟得记忆  阅读(528)  评论(0)    收藏  举报