private void ToExcel(HttpContext context, string TempletFileName//模版文件, string ReportFileName//导出文件, DataTable dt2) { //模板文件 //string TempletFileName = context.Server.MapPath(TempletFileName); //导出文件 //string ReportFileName = context.Server.MapPath("out.xls"); FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read); HSSFWorkbook hssfworkbook = new HSSFWorkbook(file); //XSSFWorkbook hssfworkbook = new XSSFWorkbook(file); //HSSFSheet ws = (HSSFSheet)hssfworkbook.GetSheetAt(0);//GetSheet("Sheet1"); HSSFSheet ws2 = null; int rowsCount = dt2.Rows.Count; int columnCount = dt2.Columns.Count; int num = 60000; int row = 0; if (rowsCount > 0) { int sheetCount = rowsCount > num ? (int)Math.Ceiling((double)(rowsCount / num)) : 0; for (int i = 0; i <= sheetCount; i++) { try { ws2 = (HSSFSheet)hssfworkbook.GetSheetAt(i); } catch { ws2 = (HSSFSheet)hssfworkbook.CreateSheet("Sheet" + (i + 1)); } int strRows = i * num; int endRows = num > rowsCount - (num * i) ? rowsCount : (i + 1) * num; NPOI.SS.UserModel.IRow row1 = null; for (int j = strRows; j < endRows; j++) { row++; int m = 0; if (i == 0) { m = 4; } row1 = ws2.CreateRow(row + m); row1.HeightInPoints = 25;//行高 for (int k = 0; k < columnCount; k++) { ICell cell = row1.CreateCell(k); cell.SetCellValue(dt2.Rows[j][k].ToString()); cell.CellStyle.Alignment = HorizontalAlignment.Center; } } row = 0; ws2.ForceFormulaRecalculation = true; using (FileStream fs = new FileStream(ReportFileName, FileMode.Append, FileAccess.Write)) { hssfworkbook.Write(fs); } } }


















//模版文件名称 TempletFileName,
//导出文件名称 ReportFileName,
private void ToExcel(HttpContext context, string TempletFileName, string ReportFileName, DataTable dt2)
{
FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read);
HSSFWorkbook hssfworkbook = new HSSFWorkbook(file);
HSSFSheet ws2 = null;
int rowsCount = dt2.Rows.Count;
int columnCount = dt2.Columns.Count;
int num = 60000;//每页数量
int row = 0;
if (rowsCount > 0)
{
int sheetCount = rowsCount > num ? (int)Math.Ceiling((double)(rowsCount / num)) : 0;
for (int i = 0; i <= sheetCount; i++)
{
try
{
ws2 = (HSSFSheet)hssfworkbook.GetSheetAt(i);
}
catch
{
ws2 = (HSSFSheet)hssfworkbook.CreateSheet("Sheet" + (i + 1));
}
int strRows = i * num;
int endRows = num > rowsCount - (num * i) ? rowsCount : (i + 1) * num;


- 粉丝: 17
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 【 嵌入式Linux应用开发项目 - yolov8】在泰山派RK3566上用C语言部署自己的yolov8
- 本仓库存放目标检测 YOLO 系列代码及改进模块实现,需要的小伙伴可自取
- TensorFlow 实现目标检测含 MaskRCNN 及 Keras 分类与车牌、人脸识别和 GAN 实例
- 电力电子领域基于Matlab Simulink的2kW单相Boost PFC移相全桥仿真模型设计与分析
- 基于Cruise的燃料电池功率跟随仿真模型(丰田氢能源车型,WLTC工况,最高车速175kmh,最大爬坡30%) v2.5
- 基于MATLAB Simulink的高精度纯电动汽车整车仿真模型及其闭环控制方法
- 量化投资WorldQuant BRAIN算子详解:算术、逻辑、时间序列与向量运算在量化交易中的应用
- MATLAB中PSO-BP神经网络预测的模块化编程实现与优化技巧
- Comso l软件在锂离子电池电化学建模的应用与研究进展 · 有限元分析
- CST与MATLAB联合建模在超透镜及轨道角动量电磁学研究中的应用
- 后端开发领域+python开发语言+有2个PDF文件,把第2个PDF文件合并到第1个PDF文件中,PDF文件拼接合并功能
- 基于信道状态信息(CSI)的 WiFi 室内被动式目标检测技术研究 基于 CSI 的无线网络室内被动式目标检测相关技术 依托 CSI 的 WiFi 技术在室内被动式目标检测中的应用 基于信道状态信息的
- 基于COMSOL的煤层双孔单渗透瓦斯抽采模拟与应力分布分析
- 基于PID神经元网络解耦控制算法的优化研究:多变量系统控制的PSO算法应用与探索
- 整车主断面设计的具体内容与要求详解
- Alpha 因子模板库大合集


