EPPlus使用方法---Excel处理我觉得超级好用
目前只是用到导出Excel功能,导出大规模数据量速度也很快,而且比较容易操作(最起码导出是,暂时没有用到处理已存在的excel功能,有人说NPOI也好用,试了一下,最起码导出这个不如EPPlus --狗头保命)
- 引入Get包 :EPPlus

2. 这个东西不能商用,需要添加一个非商业的凭证许可,也可以去官网看看怎么商用。
//非商业EPPlus凭证许可
ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
3. 简单的代码示例

/// <summary>
///导出EXCEL
/// </summary>
public static void ExportExcel()
{
//非商业EPPlus凭证许可
ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
//excel路径
FileInfo newFile = new FileInfo("C:\\Users\\zhang\\Desktop\\数据.xlsx");
//判断excel是否存在了,因为目前是导出数据到新的excel,有相同文件名的excel就删除重新创建
if (newFile.Exists)
{
newFile.Delete();
}
//1.根据路径文件,已存在就创建一个新实例来操作,即编辑execl操作
//2.若是文件不存在,就会创建新的EXCEL并操作,
using (ExcelPackage package = new ExcelPackage(newFile))
{
//创建shheet页,可以根据需求,添加多个sheet,例如: ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("数据2");
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("数据");
#region 标头,即execl列名
worksheet.Cells[1, 1].Value = "ID";
worksheet.Cells[1, 2].Value = "QN";
worksheet.Cells[1, 3].Value = "ProjectID";
worksheet.Cells[1, 4].Value = "PoleID";
worksheet.Cells[1, 5].Value = "DeviceID";
worksheet.Cells[1, 6].Value = "DeviceMNCode";
worksheet.Cells[1, 7].Value = "DataTime";
worksheet.Cells[1, 8].Value = "UploadTime";
worksheet.Cells[1, 9].Value = "MetricA01001";
worksheet.Cells[1, 10].Value = "FlagA01001";
#endregion
int num = 1;
//data就是要循环的数据.根据个人要求自行修改即可
List<dynamic> data = new List<dynamic>() { };
for (int i = 0; i < data.Count; i++)
{
num++;
worksheet.Cells[num, 1].Value = data[i].ID;
worksheet.Cells[num, 2].Value = data[i].QN;
worksheet.Cells[num, 3].Value = data[i].ProjectID;
worksheet.Cells[num, 4].Value = data[i].PoleID;
worksheet.Cells[num, 5].Value = data[i].DeviceID;
worksheet.Cells[num, 6].Value = data[i].DeviceMNCode;
worksheet.Cells[num, 7].Value = data[i].DataTime.ToString();
worksheet.Cells[num, 8].Value = data[i].UploadTime.ToString();
worksheet.Cells[num, 9].Value = data[i].MetricA01001.ToString();
worksheet.Cells[num, 10].Value = data[i].FlagA01001.ToString();
}
//最后将实例保存,保存的位置就是刚才创建实例的路径
package.Save();
}
}
简单的代码示例
4. 读取已有excel

static void ExcelDES(string fileinfo)
{
FileInfo file = new FileInfo("路径");
ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
using (ExcelPackage package = new ExcelPackage(file))
{
ExcelWorksheet wb = package.Workbook.Worksheets[0];
int row = wb.Dimension.Rows;
Console.WriteLine(row);
for (int i = 1; i <= row; i++)
{
string ip = wb.Cells[i, 1].Value.ToString();
}
package.Save();
}
}

EPPlus使用方法---Excel处理我觉得超级好用的更多相关文章
- EpPlus读取生成Excel帮助类+读取csv帮助类+Aspose.Cells生成Excel帮助类
大部分功能逻辑都在,少量自定义异常类和扩展方法 ,可用类似代码自己替换 //EpPlus读取生成Excel帮助类+读取csv帮助类,epplus只支持开放的Excel文件格式:xlsx,不支持 xls ...
- 使用 EPPlus 封装的 excel 表格导入功能 (.net core c#)
使用 EPPlus 封装的 excel 表格导入功能 前言 最近做系统的时候有很多 excel导入 的功能,以前我前后端都做的时候是在前端解析,然后再做个批量插入的接口 我觉着这样挺好的,后端部分可以 ...
- 使用 EPPlus 封装的 excel 表格导入功能 (二) delegate 委托 --永远滴神
使用 EPPlus 封装的 excel 表格导入功能 (二) delegate 委托 --永远滴神 前言 接上一篇 使用 EPPlus 封装的 excel 表格导入功能 (一) 前一篇的是大概能用但是 ...
- 使用NPOI或EPPlus来导出Excel文件实例,可在Excel文件加密
使用NPOI.dll组件来导出Excel文件,并设置样式,Nuget引用即可. packages\NPOI.2.1.3.1\lib\net20\NPOI.dll #region Excel prote ...
- 在ASP.NET Core中使用EPPlus导入出Excel文件
这篇文章说明了如何使用EPPlus在ASP.NET Core中导入和导出.xls/.xlsx文件(Excel).在考虑使用.NET处理excel时,我们总是寻找第三方库或组件.使用Open Offic ...
- EPPlus实战篇——Excel写入
.net core 项目 可以向excel写入任何类型(T)的数据,只要T中的field的[Display(Name = "1233", Description = "# ...
- EPPlus实战篇——Excel读取
.net core 项目 可以从excel读取任何类型(T)的数据,只要T中的field的[Display(Name = "1233")]中的name==excel column ...
- .NET Core使用EPPlus简单操作Excel(简单实现导入导出)
1.前言 EPPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/2010 文件的开源组件,在导出Excel的时候不需要电脑上安装office,它的一个缺 ...
- ASP.NET Core使用EPPlus导入导出Excel
开发过程中,经常会遇到导入导出数据的需求,本篇博客介绍在.NET Core中如何使用EPPlus组件导入导出Excel EPPlus: EPPlus是使用Open Office XML格式(xlsx) ...
- Epplus:导出Excel
看到其它大神的Epplus导出Excel,结合写出符合自己需求的将导出数据到Excel,给其它人参考一下,也可以学习http://www.cnblogs.com/caofangsheng/p/6149 ...
随机推荐
- KubeKey 部署 K8s v1.28.8 实战
在某些生产环境下,我们仅需要一个原生的 K8s 集群,无需部署 KubeSphere 这样的图形化管理控制台.在我们已有的技术栈里,已经习惯了利用 KubeKey 部署 KubeSphere 和 K8 ...
- [Flink/FlinkCDC] 实践总结:Flink 1.12.6 升级 Flink 1.15.4
Flink DataStream/API 依赖模块的变化 版本变化 flink.version : 1.12.6 => 1.15.4 flink.connector.version : 1.12 ...
- vscode连接docker时需要为docker容器开设一个映射端口
相关: vscode远程连接远程主机上的docker -- 设置命令 -- -p 5001:5001 设置端口: -p 5001:5001 命令Demo: docker run -it -v /hom ...
- 题解:CF1301D Time to Run
CF1301D Time to Run 题解 思维题. 分析 把一个格子视作一个点,每个点的度数都是偶数,所以这是一张欧拉图.而需要走遍整个方格图,可以证明只要 \(k\) 不超过 \(4nm-2n- ...
- vue2-基础核心
vue简介 vue中文官网 动态构建用户界面的渐进式 JavaScript 框架 vue的特点: 遵循MVVM模式 采用组件化模式,提高代码复用率,让代码更好维护 声明式编码,无需直接操作DOM,提高 ...
- 数据结构课程设计报告-C 语言整数单链表的表示和实现
数据结构课程设计报告 专业名称:计算机科学与技术 课程名称:数据结构 实训题目:整数单链表的表示和实现 实训环境:C 语言实现( D ...
- 【一步步开发AI运动小程序】十六、AI运动识别中,如何判断人体站位?
[云智AI运动识别小程序插件],可以为您的小程序,赋于人体检测识别.运动检测识别.姿态识别检测AI能力.本地原生识别引擎,无需依赖任何后台或第三方服务,有着识别速度快.体验佳.扩展性强.集成快.成本低 ...
- Spring源代码解析(四):Spring MVC
下面我们对Spring MVC框架代码进行分析,对于webApplicationContext的相关分析可以参见以前的文档,我们这里着重分析Spring Web MVC框架的实现.我们从分析Dispa ...
- SpringMVC-Mybatis-Maven项目整合
上次不知道为什么,把写好的系列文章都搞成一样了.结果,五篇文章,都变成了最后一篇文章. 悲剧,好吧,只好重新写了. 这系列文章写的是SpringMVC-Mybatis-Maven项目整合.说白了,其实 ...
- 利用Stripes实现Java Web开发
Stripes是一个以让程序员的web开发简单而高效为准则来设计的基于动作的开源Java web框架.本文将介绍Stripes与其它如Struts之类基于动作的框架的区别和其提供的一些存在于Ruby ...