标签:datatable 变量 创建excel文件 etc his ++ xls 导致 控制
前台调用:
view: <a href=‘/Admin/NurseUser/Excel‘ target=‘_blank‘>导出Excel</a>
或
js: window.location = "/Controller/Excel";
后台代码(控制器):
public FileResult Excel(){
//第一步:以虚拟表的形式获取要导出的数据
DataTable dt = this.Service.Excel();
//第二步:创建excel文件的对象
NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
//第三步:添加一个sheet页
NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1");
//第四步:sheet页添加栏位
NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(0);
row1.CreateCell(0).SetCellValue("标题一");
row1.CreateCell(1).SetCellValue("标题二");
//第五步:将数据写入sheet各个行
for(int i = 0;i<dt.Rows.Count;i++){
NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + 1);
for (int j = 0; j < dt.Columns.Count; j++){
rowtemp.CreateCell(j - 1).SetCellValue(dt.Rows[i][j].ToString());
}
}
//第六步:写入客户端
System.IO.MemoryStream ms = new System.IO.MemoryStream();
book.Write(ms);
ms.Seek(0, SeekOrigin.Begin);
return File(ms, "application/vnd.ms-excel", "用户信息.xls");
}
注意:此代码须在控制器里,在dao层 return File中的File会被当作变量处理,导致报错,其本质是一个类型。
标签:datatable 变量 创建excel文件 etc his ++ xls 导致 控制
原文地址:http://www.cnblogs.com/llljpf/p/6594215.html