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 ...
随机推荐
- flink同步MySQL数据的时候出现内存溢出
flink同步MySQL数据的时候出现内存溢出 背景:需要将1000w的某类型数据同步到别的数据源里面,使用公司的大数据平台可以很快处理完毕,而且使用的内存只有很少很少量(公司的大数据平台的底层是fl ...
- KubeSphere v3.3.1 权限控制详解
作者:周文浩,青云科技研发工程师,KubeSphere Maintainer.热爱云原生,热爱开源,目前负责 KubeSphere 权限控制的开发与维护. KubeSphere 3.3.1 已经发布一 ...
- jmeter使用beanshell完成签名计算,附与python代码对比
签名计算过程: 1.ticket计算:时间戳加+随机数字拼接后md5加密 2.组装公共参数+ticket+时间戳+业务参数 beanshell代码实现: import java.util.*;impo ...
- CSS动画(登录页面)
1.整体效果 https://mmbiz.qpic.cn/sz_mmbiz_gif/EGZdlrTDJa6Pfop3IiakrZOtiaiaKniaxeH2Gs407DmkXPsMo8AFKdsYib ...
- 24/10/13 ABC375补题笔记
A 典,属于显而易见的水题,这数据范围直接暴力做就行了. # include <bits/stdc++.h> using namespace std; int main (){ int n ...
- ABP使用基于JWT标准的的Token访问API
这里就不详细介绍JWT了,JWT的详细介绍可以查看简书的这篇文章,写得非常详细:http://www.jianshu.com/p/576dbf44b2ae 1.申请Token ABP内部已经为我们实现 ...
- 如何在原生鸿蒙中进行RN热加载
一.背景 在上一篇博客中,我分享了将RN的bundle包在原生鸿蒙开发中进行使用.但是如果我们在实际的开发过程中,每次修改完代码都需要打包,然后重新运行原生项目的话效率就有点太低了. 原生鸿蒙支持RN ...
- mysql 触发器阻止不合理数据插入
今天看到有人问如何判断处理有不符合的数据阻止插入.比如这个数据只能在90天内存在一条,如果有了就拒绝插入. 当然大家都说用代码判断,判断一下90天内是否有数据,有就拒绝. 我这里说一个使用触发器的思路 ...
- Windows11 常用软件/环境安装记录
Windows 编程 - The Tools I use 软件安装和管理 将软件装到统一一个地方,路径简短,不含空格和中文. WinGet 官方 Windows 软件包管理器 WinGet 在安装命令 ...
- Lucene 源代码剖析-2 Lucene是什么
转载自 http://download.csdn.net/source/858994 源地址下是 Word 文档,这里转换成HTML 格式 1 Lucene是什么 Apache L ...