npoi使用Excel模板下载数据
C# 使用npoi下载Excel文件时,在有些复杂场景下需要对Excel数据及表头进行特殊处理。如合并表头,对某些列设置特殊数值格式。 这就需要提前定制Excel模板,做好特殊处理,程序只需要填入数据即可达到想要的效果。
效果如下:
Excel模板:
Excel下载:
代码如下:
//打开Excel模板
HSSFWorkbook work = customSheet.OpenSheet(Server.MapPath("Files/Template.xls"));
ISheet sheet = work.GetSheetAt(0);
ICellStyle cellstyle;
IRow row;
ICell cell;
Random random = new Random();
for (int i = 2; i <= 4; i++)
{
row = sheet.GetRow(i);
for (int k = 1; k <= 10; k++)
{
Double RandomNum = random.Next(100, 900) / 130.0000;
cell = row.GetCell(k);
cell.SetCellValue(RandomNum);
cellstyle = work.CreateCellStyle(); //初始化单元格样式
//获取模板单元格样式(不使用Excel模板,不需要使用该行代码)
cellstyle.CloneStyleFrom(cell.CellStyle);
if (k % 5 == 0)
{
HSSFFont ffont = (HSSFFont)work.CreateFont();
ffont.FontHeight = 14 * 14;
ffont.FontName = "宋体";
ffont.Color = HSSFColor.Red.Index;
cellstyle.SetFont(ffont);
cellstyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("0.00%");
}
cell.CellStyle = cellstyle; //给单元格追加格式
}
}
customSheet.SaveSheet(work, Server.MapPath("Files/demo2.xls"));
/// <summary>
/// 保存excel文件到指定位置
/// </summary>
/// <param name="book"></param>
/// <param name="FilePath"></param>
public void SaveSheet(HSSFWorkbook book, string FilePath)
{
FileStream file = new FileStream(FilePath, FileMode.Create);
book.Write(file);
file.Close();
}
/// <summary>
/// 打开Excel读取到sheet中(可将Excel格式、样式及数据读取到sheet中,减少通程序属性添加样式)
/// </summary>
/// <param name="FilePath"></param>
/// <returns></returns>
public HSSFWorkbook OpenSheet(string FilePath)
{
HSSFWorkbook workbook;
FileInfo File = new FileInfo(FilePath);
FileStream fs;
using (fs = File.OpenRead())
{
workbook = new HSSFWorkbook(fs);
fs.Close();
}
return workbook;
}
npoi使用Excel模板下载数据相关推荐
- SAP ABAP(一个简单的excel模板下载与数据导入demo)
文章目录 备忘 一.excel模板 二.代码 如下: 总结 备忘 excel模板下载与数据上传处理demo (选择屏幕添加按钮,F4选择文件,模板下载,读取excel数据) 一.excel模板 共两个 ...
- nginx,excel模板下载
nginx,excel模板下载 weixin_30814223 2018-08-27 10:26:00 245 收藏 版权 spring boot项目,使用nginx服务器 最近在做一个功能是ex ...
- 【vue+springboot】excel模板下载、导入功能实现
基于VUE+SpringBoot实现excel模板下载.导入功能 背景 最近在工作中经常遇到批量导入的功能,而且前端还要提示导入成功几条.失败几条.哪一条数据重复.是哪一条导入的数据出现问题等,抽空写 ...
- VUE+JAVA实现EXCEL模板下载
一.项目场景: VUE+JAVA实现EXCEL模板下载 二.功能背景 本人作为一个开发小白,今天接到一个小需求系统需要导入数据,也就十几个字段,我和老板说了,让客户一个一个去输入吧!然后我就被经理叫去 ...
- C#中通过Excel模板导出数据
一.实现效果 1.1.编写特定格式的Excel模板 1.2.调用Excel模板导出数据 二.实现核心 #region 通过模板导出Excel文件/// <summary>/// 通过模板导 ...
- .net excel导入mysql_.NET Core使用NPOI将Excel中的数据批量导入到MySQL - 追逐时光者 - 博客园...
前言: 在之前的几篇博客中写过.NET Core使用NPOI导出Word和Excel的文章,今天把同样我们日常开发中比较常用的使用Excel导入数据到MySQL数据库中的文章给安排上.与此同时还把NP ...
- 博图WINCC报表(SQL数据库的建立,TIA_wincc在数据库中保存和查询数据,调用Excel模板把数据保存到指定的位置)
这里写目录标题 目录 一.概述 1.1 前言 1.2 主要功能 1.3 使用的软件 二. SQL server建库和建表 2.1.SQL server建库 2.2SQL server建表 三.建立wi ...
- VUE+ElementUI生成Excel模板 导入数据生成表格(自适应)
VUE+ElementUI生成Excel模板 导入数据生成表格(自适应) 最近项目需求,需要根据条件查询对应数据的参数(每条数据的参数名称和个数都不一样) ,生成Excel表格模板,再通过Excel模 ...
- SpringBoot打成jar包部署,Excel模板下载文件遇到的问题
问题一. 读取resource 目录下文件时出现路径找不到 在本机测试都很顺利,当打包jar文件放到服务器上测试的时候发现了类似下面的异常信息: java.nio.file.NoSuchFileExc ...
最新文章
- 解析#pragma指令
- 哪吒之魔童降世 - 逆天改命,若命运不公,就和它斗到底!
- mysql count 排序_SQL进阶排序和窗口函数
- java 命名内部类_如何把java SWT程序中的匿名内部类改写成命名内部类?
- Leetcode--5. 最长回文子串(java)
- 文本挖掘预处理之TF-IDF
- 递归获取字符串内的所有图片src地址
- C# 学生简单管理系统 数据库 1.0版本
- [转]jQuery为控件添加水印文字
- QT添加资源和样式表(设计窗口背景图)
- Mybatis-01-简介及入门
- android彻底退出应用_Android完全退出应用程序的方法
- 吴恩达机器学习课后作业
- 【技术认证题库】SCCA理论aDesk-2考试【初级】
- mysql数据库表中重命名语句_mysql数据库重命名sql语句
- 【记录】读《你在天堂里遇见的五个人》有感
- 数值分析|二阶三点式Python编程
- 062:vue+openlayers绘制正方形、矩形、六芒星( 代码示例 )
- matlab画六面体,MATLAB绘制平行六面体
- 电 流 源和 电 压 源