NPOI其实已经介绍的差不多了,再贴一个方便以后复制粘贴。
亮点其实是 Server.MapPath 这个东西,可以找到MVC工程下的文件夹,找路径还是很方便的。
??/// <summary> ???????/// 设备导出Excel表格 ???????/// </summary> ???????public FileResult ExportExcel() ???????{ ???????????string fileDir = Server.MapPath("~/ReportTemplate/我的模板.xls"); ???????????FileStream Dir = new FileStream(fileDir, FileMode.Open, FileAccess.Read); ???????????HSSFWorkbook workbook = new HSSFWorkbook(Dir); ???????????ISheet sheet = workbook.GetSheet("sheet1"); ???????????MemoryStream ms = new MemoryStream(); ??????????????????DataTable table = EQEquipmentBLL.GetInstance().GetListForExport(""); ???????????for (int i = 2; i < table.Rows.Count; i++) ???????????{ ???????????????????sheet.GetRow(i).GetCell(0).SetCellValue(table.Rows[i-2]["EqID"].ToString()); ???????????????sheet.GetRow(i).GetCell(1).SetCellValue(table.Rows[i-2]["EqName"].ToString()); ???????????????sheet.GetRow(i).GetCell(2).SetCellValue(table.Rows[i-2]["ProduceFactory"].ToString()); ???????????????sheet.GetRow(i).GetCell(3).SetCellValue(table.Rows[i-2]["Model"].ToString()); ???????????} ???????????sheet.ForceFormulaRecalculation = true; ?//强制计算Excel中的公式 ???????????workbook.Write(ms); ???????????ms.Flush(); ???????????ms.Seek(0, SeekOrigin.Begin); ???????????return File(ms, "application/ms-excel", $"我的模板{DateTime.Now.ToString("D")}.xls"); ???????}
.net MVC使用NPOI读取Excel模板,再写入数据
原文地址:https://www.cnblogs.com/yunquan/p/9319134.html