Spire.Xls导出slx表格2:当WPS版本过低时,NPOI导出大数据文件在低版本无法打开
var path = HttpContext.Server.MapPath($"~/Temp/文件xls导出{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.xls");
获取datatable数据...
try
{
Workbook newBook1 = new Workbook();
newBook1.CreateEmptySheets(1);
Worksheet newSheet1 = newBook1.Worksheets[0];
/*写表头*/
newSheet1.Range[1, 1].Text = "序号";
newSheet1.Range[1, 2].Text = "内容1";
newSheet1.Range[1, 3].Text = "内容2";
/*写内容*/
for (int i = 0; i < dt.Rows.Count; i++)
{
newSheet1.Range[i + 2, 1].Text = (i+1).ToString();
newSheet1.Range[i + 2, 2].Text = dt.Rows[i]["tmp1"].ToString();
newSheet1.Range[i + 2, 3].Text = dt.Rows[i]["tmp2"].ToString();
}
/**设置样式*/
newSheet1.AllocatedRange.AutoFitColumns();//列宽自适应
newSheet1.Range[1, 1, 1, newSheet1.LastColumn].Style.Font.IsBold = true;//首行字体加粗
newSheet1.FreezePanes(2, 1);//首行冻结
/**保存*/
newBook1.SaveToFile(path, ExcelVersion.Version2013); //保存到服务端,再打开成文件流,返回文件流到前端,避开字节流,避免编码错乱
FileStream fs = new FileStream(path, FileMode.Open);
return File(fs, "application/text", "导出文件1.xls");
}
catch (Exception ex)
{
return Content(ex.Message.ToString());
}