Asp.net MVC 利用 Nopi 导出 Excel
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | /// <summary> /// 导出认账流水 /// </summary> /// <returns></returns> public ActionResult ExportAdmitBankTrans(BankTransQueryModel queryModel) { HSSFWorkbook workBook = new HSSFWorkbook(); ISheet sheet = workBook.CreateSheet( "商务报表" ); IRow row = sheet.CreateRow(0); // 获取样式 Func<ICellStyle> getCellStyle = () => { ICellStyle cellStyle = workBook.CreateCellStyle(); cellStyle.Alignment = HorizontalAlignment.Center; return cellStyle; }; ICellStyle headerStyle = getCellStyle(); IFont fontHeade = workBook.CreateFont(); fontHeade.FontHeightInPoints = 11; fontHeade.FontName = "微软雅黑" ; fontHeade.Boldweight = ( short )FontBoldWeight.Bold; headerStyle.SetFont(fontHeade); Func< string , int , ICell> setCellStyle = ( string cellText, int colindex) => { ICell cell = row.CreateCell(colindex); sheet.SetColumnWidth(colindex, 9000); cell.SetCellValue(cellText); cell.CellStyle = headerStyle; return cell; }; setCellStyle( "供应商名称" , 0); setCellStyle( "采购编号" , 1); setCellStyle( "实际到账" , 2); setCellStyle( "到账日期" , 3); int rowStart = 1; var list = BankTransBll.Instance.GetAllBankTransRealList(queryModel); if (list != null ) { foreach ( var item in list) { IRow myrow = sheet.CreateRow(rowStart); myrow.CreateCell(0).SetCellValue(item.CompanyName); myrow.CreateCell(1).SetCellValue(item.ContractNo); myrow.CreateCell(2).SetCellValue(item.Amount.ToString( "f2" )); myrow.CreateCell(3).SetCellValue(item.REC_CREATETIME.ToShortDateString()); rowStart++; } } using (MemoryStream ms = new MemoryStream()) { workBook.Write(ms); byte [] buffers = ms.ToArray(); return File(buffers, "application/vnd.ms-excel" , string .Format( "{0}.xls" , DateTime.Now.ToString( "yyyyMMddHHmmss" ))); } } |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步