Asp.net MVC后台代码 
public ActionResult Export()
{ OfficeOpenXml.ExcelPackage ep = new OfficeOpenXml.ExcelPackage();
OfficeOpenXml.ExcelWorkbook wb = ep.Workbook;
OfficeOpenXml.ExcelWorksheet ws = wb.Worksheets.Add("我的工作表");
////配置文件属性
//wb.Properties.Category = "类别";
//wb.Properties.Author = "作者";
//wb.Properties.Comments = "备注";
//wb.Properties.Company = "公司";
//wb.Properties.Keywords = "关键字";
//wb.Properties.Manager = "管理者";
//wb.Properties.Status = "内容状态";
//wb.Properties.Subject = "主题";
//wb.Properties.Title = "标题";
//wb.Properties.LastModifiedBy = "最后一次保存者";
// var list = GetList();
int x = ;
for (int i = ; i < 3; i++)
{
//if (x == 1000000)
//{
// ws = wb.Worksheets.Add("我的工作表" + Guid.NewGuid().ToString());
// x = 0; //}
for (int j = ; j <= ; j++)
{ ws.Cells[(x + ), j].Value = DateTime.Now.ToString(); }
x++; }
//写数据
//ws.Cells[1, 1].Value = "Hello"; //ws.Cells[1, 1].Style.Numberformat.Format = "yyyy-MM-dd"; //ws.Column(1).Width = 40;//修改列宽
//ws.Cells["B1"].Value = "World";
//ws.Cells[3, 3, 3, 5].Merge = true;
//ws.Cells[3, 3].Value = "Cells[3, 3, 3, 5]合并";
//ws.Cells["A4:D5"].Merge = true; //ws.Cells["A4:D5"].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center;//居中 //ws.Cells["A4"].Value = "Cells[\"A4:D5\"]合并";
//写到客户端(下载)
Response.Clear();
Response.AddHeader("content-disposition", "attachment; filename=FileFlow.xlsx");
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
byte[] data=ep.GetAsByteArray(); Response.AddHeader("Content-Length", data.Length.ToString());
Response.BinaryWrite(data);
//ep.SaveAs(Response.OutputStream); 第二种方式
Response.Flush();
Response.End();
return null; }
 FileInfo newFile = new FileInfo(@"d:\test.xlsx");
if (newFile.Exists)
{
newFile.Delete();
newFile = new FileInfo(@"d:\test.xlsx");
}
//using (ExcelPackage package = new ExcelPackage(newFile))
//{
// ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("test");
// worksheet.Cells[1, 1].Value = "名称";
// worksheet.Cells[1, 2].Value = "价格";
// worksheet.Cells[1, 3].Value = "销量"; // worksheet.Cells[2, 1].Value = "大米";
// worksheet.Cells[2, 2].Value = 56;
// worksheet.Cells[2, 3].Value = 100; // worksheet.Cells[3, 1].Value = "玉米";
// worksheet.Cells[3, 2].Value = 45;
// worksheet.Cells[3, 3].Value = 150; // worksheet.Cells[4, 1].Value = "小米";
// worksheet.Cells[4, 2].Value = 38;
// worksheet.Cells[4, 3].Value = 130; // worksheet.Cells[5, 1].Value = "糯米";
// worksheet.Cells[5, 2].Value = 22;
// worksheet.Cells[5, 3].Value = 200; // package.Save();
//}
OfficeOpenXml.ExcelPackage ep = new OfficeOpenXml.ExcelPackage(newFile);
OfficeOpenXml.ExcelWorkbook wb = ep.Workbook;
OfficeOpenXml.ExcelWorksheet ws = wb.Worksheets.Add("我的工作表");
//配置文件属性
//wb.Properties.Category = "类别";
//wb.Properties.Author = "作者";
//wb.Properties.Comments = "备注";
//wb.Properties.Company = "公司";
//wb.Properties.Keywords = "关键字";
//wb.Properties.Manager = "管理者";
//wb.Properties.Status = "内容状态";
//wb.Properties.Subject = "主题";
//wb.Properties.Title = "标题";
//wb.Properties.LastModifiedBy = "最后一次保存者";
// var list = GetList();
int x = ;
for (int i = ; i < ; i++)
{
if (x == )
{
ws = wb.Worksheets.Add("我的工作表" + Guid.NewGuid().ToString());
x = ; }
for (int j = ; j <= ; j++)
{ ws.Cells[(x + ), j].Value = DateTime.Now.ToString();
Console.WriteLine((i+));
}
x++; }
ep.Save();

Client的版本亲测至少可导出千万级别的数据,Web版本要看服务器内存配置。。

epplus下载路径: http://epplus.codeplex.com/

epplus excel数据导出(数据量有点大的情况) Web和Client的更多相关文章

  1. NPOI读取excel文件导出数据, 而此时文件正在打开中抛异常怎么办

    项目中需要用到一些数值表格, 方便起见都是用excel来的. 而如果excel正打开中, 直接使用npoi制作的工具来导出数据的话, 在这一行将会异常: workbook = new XSSFWork ...

  2. 使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出 ...

  3. kettle 使用excel模板导出数据

    通过excel进行高速开发报表: 建设思路: 1.首先制订相关的execl模板. 2.通过etl工具(kettle)能够高速的 将数据库中的数据按excel模板导出成新的excel就可以. 当中ket ...

  4. Aspose.cell中的Excel模板导出数据

    //Excel模板导数据(Eexcel中根据DataTable中的个数,给多个Sheet中的模板赋值) public void DataSetToManyExcel(string fileName, ...

  5. java实现excel表格导出数据

    /** * 导出清单 eb中 firstRow(EntityBean) 列表第一行数据,键值对(不包含序号)例:("name","姓名") * data(Ent ...

  6. Net 自定义Excel模板导出数据

    转载自:http://www.cnblogs.com/jbps/p/3549671.html?utm_source=tuicool&utm_medium=referral 1 using Sy ...

  7. C# Winform Excel的导出,根据excel模板导出数据

    namespace dxhbskymDemo { public partial class ExcelForm : DevExpress.XtraEditors.XtraForm { public E ...

  8. sql server 大数据, 统计分组查询,数据量比较大计算每秒钟执行数据执行次数

    -- 数据量比较大的情况,统计十分钟内每秒钟执行次数 ); -- 开始时间 ); -- 结束时间 declare @num int; -- 结束时间 set @begintime = '2019-08 ...

  9. 大数据学习----day27----hive02------1. 分桶表以及分桶抽样查询 2. 导出数据 3.Hive数据类型 4 逐行运算查询基本语法(group by用法,原理补充) 5.case when(练习题,多表关联)6 排序

    1. 分桶表以及分桶抽样查询 1.1 分桶表 对Hive(Inceptor)表分桶可以将表中记录按分桶键(某个字段对应的的值)的哈希值分散进多个文件中,这些小文件称为桶. 如要按照name属性分为3个 ...

随机推荐

  1. Tp框架中模板中if条件如何使用?

  2. iOS 烟花撒花效果,图层渐变,图层倒影特效。CAEmitterLayer粒子发射器

    iOS 烟花撒花效果,图层渐变,图层倒影特效.CAEmitterLayer粒子发射器 上一节我写了一个关于视图图层的相关类,有关CALayer这个类的使用和一些使用方法,详细看这里,就是我们在处理视图 ...

  3. java FileI(O)nputStream为什么比BufferedI(O)utputStream慢?

    因为buffered多了一个缓冲区,读和写都是先把硬盘或者内存中的数据放到内存中一块缓存区域,到一定大小读写到硬盘或者内存   package io; import java.io.*; public ...

  4. jsp标签(jsp动作元素)

    <jsp:forward page=”/index.jsp”></jsp:forward>也是跳转. 可以用来配置为首页,来启动某个servlet. <jsp:inclu ...

  5. 偏最小二乘回归(PLSR)- 2 标准算法(NIPALS)

    1 NIPALS 算法 Step1:对原始数据X和Y进行中心化,得到X0和Y0.从Y0中选择一列作为u1,一般选择方差最大的那一列. 注:这是为了后面计算方便,如计算协方差时,对于标准化后的数据,其样 ...

  6. winform通过网络获取用户信息

    1.获取当前部署: public static NameValueCollection GetQueryStringParameters() { NameValueCollection nameVal ...

  7. UVA10624 - Super Number(dfs)

    题目:UVA10624 - Super Number(dfs) 题目大意:给你n和m要求找出这种m位数,从第n位到第m位都满足前i位是能够被i整除,假设没有这种数,输出-1.有多个就输出字典序最小的那 ...

  8. 用bcdedit.exe重建bcd

    使用下面方法之前需要bcdedit.exe和bootsect.exe两个文件,bootsect.exe文件在vista和windows 7的安装光盘的boot目录下,而bcdedit.exe文件可以在 ...

  9. TypeError: can't convert console.log(...) to primitive type

    一.背景 火狐浏览器提示这个错误,谷歌没有. 二.出错代码 var eventHandlers = { 'succeeded': function(e){ console.log('send succ ...

  10. linux CentOs 权限导致的Apache - "DocumentRoot must be a directory"的解决方案

    在配置apache服务时经常遇到DocumentRoot must be a directory的错误提示,刚接触到apache时折腾了几个小时才找到错误的原因,出现这样的错误一般都是由于selinu ...