MVC 导出Execl 的总结几种方式 (三)
第三种方式呢,就是借用第三方插件 NPOI 来实现Execl 导出
第一步:在NuGut包中下载NPOI 组件
第二步:编辑控制器代码
public FileResult ExcelNewKeyPromotion()
{
string title = "Market Sensing-Key Promotion"; var model = GetList(); NPOI.HSSF.UserModel.HSSFWorkbook book = new NPOI.HSSF.UserModel.HSSFWorkbook();
NPOI.SS.UserModel.ISheet sheet1 = book.CreateSheet("Sheet1"); IFont font = book.CreateFont();
font.FontHeightInPoints = ;
font.Boldweight = (short)NPOI.SS.UserModel.FontBoldWeight.Bold;//加粗 IFont font1 = book.CreateFont();
font1.FontHeightInPoints = ;
font1.Boldweight = (short)NPOI.SS.UserModel.FontBoldWeight.Bold;//加粗 NPOI.SS.UserModel.IRow row0 = sheet1.CreateRow();
SetCellRangeAddress(sheet1, , , , ); //设置夸单元格
ICellStyle cellstyle = book.CreateCellStyle();//设置垂直居中格式
cellstyle.Alignment = HorizontalAlignment.Center; //设置水平居中
cellstyle.VerticalAlignment = VerticalAlignment.Center;//垂直居中
cellstyle.SetFont(font); //设置字体
ICell cell = row0.CreateCell();
cell.CellStyle = cellstyle;
cell.SetCellValue(title); NPOI.SS.UserModel.IRow row1 = sheet1.CreateRow(); ICellStyle Rowstyle = book.CreateCellStyle();//设置垂直居中格式
Rowstyle.VerticalAlignment = VerticalAlignment.Center;//垂直居中
Rowstyle.Alignment = HorizontalAlignment.Center; //设置水平居中
Rowstyle.FillPattern = FillPattern.SolidForeground;
Rowstyle.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Grey25Percent.Index; //设置背景色
Rowstyle.SetFont(font1);
var lstTitle = new List<string> { "Year", "Week", "Date"};
for (int i = ; i < lstTitle.Count(); i++)
{
ICell cellRow1 = row1.CreateCell(i);
cellRow1.CellStyle = Rowstyle;
cellRow1.SetCellValue(lstTitle[i]);
} // row1.CreateCell(12).SetCellValue("Photo");
ICell cellRow2 = row1.CreateCell();
cellRow2.CellStyle = Rowstyle;
cellRow2.SetCellValue("Photo");
Rowstyle.SetFont(font1);
SetCellRangeAddress(sheet1, , , , ); //设置夸单元格 int rowIndex = ;
for (int i = ; i < model.Count; i++)
{
NPOI.SS.UserModel.IRow rowtemp = sheet1.CreateRow(i + ); rowtemp.Height = ; //设置行高 rowtemp.CreateCell().SetCellValue(model[i].Id.ToString());
rowtemp.CreateCell().SetCellValue(model[i].Name.ToString());
rowtemp.CreateCell().SetCellValue(model[i].CreateTime.ToString("yyyy-MM-dd hh:mm:ss")); rowIndex++;
} System.IO.MemoryStream ms = new System.IO.MemoryStream();
book.Write(ms);
ms.Seek(, SeekOrigin.Begin); string fileName = "Market Sensing / KeyPromotion.xls";
return File(ms, "application/vnd.ms-excel", fileName); }
第三步:前端页面
function ExcelNewKeyPromotion() {
window.open("/Home/ExcelNewKeyPromotion")
}
MVC 导出Execl 的总结几种方式 (三)的更多相关文章
- MVC 导出Execl 的总结几种方式 (二)
接着上面的来,继续导出Execl 的功能 使用FileResult 方式直接可以生产Execl ,这样我们将会写大量处理后台的代码,个人感觉不好,只是展示出来,提供参考 第一步:编辑控制器 publi ...
- MVC 导出Execl 的总结几种方式 (四)
这种方式我个人还是比较喜欢的,使用部分视图的方式,导出Execl 这样在编辑样式上也是很方便的 第一步: 编辑导出视图页 @using H5UpdateImage.Models; @{ Layout ...
- MVC 导出Execl 的总结几种方式 (一)
在ASP.NET 中导出Execl 表格有很多方式,有利有弊,就是看自己怎么使用了:下面就是自己总结了几种导出Execl 方式的,仅供参考. 导出Execl 的原理都是一样的,其实都是将数据整合成ta ...
- .NET环境下导出Excel表格的两种方式和导入两种类型的Excel表格
一.导出Excel表格的两种方式,其中两种方式指的是导出XML数据类型的Excel(即保存的时候可以只需要修改扩展名为.xls)和真正的Excel这两种. using System; using Sy ...
- MVC验证10-到底用哪种方式实现客户端服务端双重异步验证
原文:MVC验证10-到底用哪种方式实现客户端服务端双重异步验证 本篇将通过一个案例来体验使用MVC的Ajax.BeginForm或jQuery来实现异步提交,并在客户端和服务端双双获得验证.希望能梳 ...
- spring mvc获取路径参数的几种方式 - 浅夏的个人空间 - 开源中国社区
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- mvc 导出execl
mvc导出execl 必须是get方法才可以 也不能使用ajax function ComplaintsExport() { var serial = $("form").ser ...
- Spring MVC中forward请求转发2种方式(带参数)
Spring MVC中forward请求转发2种方式(带参数) http://www.51gjie.com/javaweb/956.html
- PHP导出excel文件的几种方式
PHP导出excel文件的几种方式 先说说动态生成的内容当作文件来下载的方法: 1.通过把Content-Type设置为application/octet-stream,可以把动态生成的内容当作文件来 ...
随机推荐
- Binary Search-483. Smallest Good Base
For an integer n, we call k>=2 a good base of n, if all digits of n base k are 1. Now given a str ...
- 字符串搜索 find()
参考 <C++ Primer Plus>中文版 P870 #include <map> #include <fstream> #include <iostre ...
- docker镜像基本操作一
获取镜像 首先说明一下如何从Docker hub中获取高质量的镜像,从Docker镜像库获取镜像的命令是docker pull .其命令格式为: docker pull [选项] [Docker Re ...
- webpack快速入门——CSS分离与图片路径处理
1.在终端安装extract-text-webpack-plugin 2.引入插件 const extractTextPlugin = require("extract-text-webpa ...
- java.util包详解
介绍Java的实用工具类库java.util包.在这个包中,Java提供了一些实用的方法和数据结构.本章介绍Java的实用工具类库java.util包.在这个包中,Java提供了一些实用的方法和数据结 ...
- [转][SQL]如何实现存储过程中动态加入条件---没想到语句可以这么巧妙
在存储过程过程中,如果要实现Select查询的where子句动态查询,可以用exec ( "select .... where" +@whereStr)这样的方式.但这样的话,感觉 ...
- php获取客户端ip地址方法
/** * 获取客户端IP地址 * @param integer $type 返回类型 0 返回IP地址 1 返回IPV4地址数字 * @param boolean $adv 是否进行高级模式获取(有 ...
- jmeter -- 在beanshell中拿到请求body参数和header参数
beanshell: import org.apache.jmeter.config.Arguments; import org.apache.jmeter.protocol.http.control ...
- C# 点击打开浏览器
System.Diagnostics.Process.Start("网址");//默认浏览器打开网页System.Diagnostics.Process.Start(@" ...
- mysql保留两位小数
--这个是保留整数位 SELECT CONVERT(4545.1366,DECIMAL); --这个是保留两位小数 ,)); --这个是截取两位,并不会四舍五入保留两位小数 );