CSharp中的开源读写Excel组件介绍
1. 读写Excel的开源组件
- NPOI
NPOI是指构建在POI 3.x版本之上的一个程序,NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作。
NPOI是一个开源的C#读写Excel、WORD等微软OLE2组件文档的项目。
- Aspose.Cells for .NET
Aspose.Cells for .NET 是一个编程类库,允许软件开发人员在他们自己的应用程序中操作和处理电子表格文件。
结合 API 和 GUI 控件,Aspose.Cells for .NET 加速了 Microsoft Excel编程和转换。
Aspose.Cells for .NET 支持您的企业日常使用的流行电子表格(XLS、XLSX、XLSM、XLSB、XLTX、XLTM、CSV、SpreadsheetML、ODS)文件格式。它还允许将 Excel 文件导出为 PDF、DOCX、PPTX、JSON、XPS、HTML、MHTML、JSON,纯文本和流行的图像格式,包括 TIFF、JPG、PNG、BMP 和 SVG。
- EPPlus
EPPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/2010 文件的开源组件,在导出Excel的时候不需要电脑上安装office,它的一个缺点就是不支持导出2003版的Excel(xls)。
- MiniExcel
MiniExcel是一个简单、高效避免 OOM 的 .NET 处理 Excel 查、写、填充数据工具。
目前主流框架大多需要将数据全载入到内存方便操作,但这会导致内存消耗问题,MiniExcel 尝试以 Stream 角度写底层算法逻辑,能让原本1000多MB占用降低到几MB,避免内存不够情况。
2. 各组件特点
2.1. NPOI
官网地址:http://npoi.codeplex.com/
NPOI 是 POI 项目的 .NET 版本。POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。
使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。
优点:
- 读取Excel数据速度较快,操作方式灵活。
- 可以操作Excel内容多,比如格式、样式、公式等
缺点:
- 官方文档较少。
- 容易出现OOM问题
2.2. Aspose.Cells for .NET
官网地址:https://docs.aspose.com/cells/net/
- 缺点:
- 收费
2.3. EPPlus
官网地址:http://epplus.codeplex.com/
2.4. MiniExcel
2.4.1. 特点
- 低内存耗用,避免OOM(out of memoery)、频繁 Full GC 情况
- 支持即时操作每行数据
- 兼具搭配 LINQ 延迟查询特性,能办到低消耗、快速分页等复杂查询
- 轻量,不需要安装 Microsoft Office、COM+,DLL小于150KB
- 简便操作的 API 风格
CSharp中的开源读写Excel组件介绍相关推荐
- C# 中 NPOI 库读写 Excel 文件的方法【摘】
原作:淡水网志 NPOI 是开源的 POI 项目的.NET版,可以用来读写Excel,Word,PPT文件.在处理Excel文件上,NPOI 可以同时兼容 xls 和 xlsx.官网提供了一份 Exa ...
- 几种开源java绘图组件介绍
jfreechart ,JGraphT,JGraph 简单介绍: 1.jfreechart 是100% 免费的 java 绘图库,开源协议 LGPL,使用简单,开发图表 很方便包括报表,包括柱状图.饼 ...
- php中使用PHPExcel读写excel(xls)文件的方法
首先从GitHub上下载 excel的相关类库 下载地址: https://github.com/PHPOffice/PHPExcel 以下是从excel中获取数据 1 <?php 2 /** ...
- .NET读写Excel工具Spire.Xls使用(1)入门介绍
原文:[原创].NET读写Excel工具Spire.Xls使用(1)入门介绍 在.NET平台,操作Excel文件是一个非常常用的需求,目前比较常规的方法有以下几种: 1.Office Com组件的方式 ...
- 一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
在目前的软件项目中,都会较多的使用到对文档的操作,用于记录和统计相关业务信息.由于系统自身提供了对文档的相关操作,所以在一定程度上极大的简化了软件使用者的工作量. 在.NET项目中如果用户提出了相关文 ...
- 最好的.NET开源免费ZIP库DotNetZip(.NET组件介绍之三)
在项目开发中,除了对数据的展示更多的就是对文件的相关操作,例如文件的创建和删除,以及文件的压缩和解压.文件压缩的好处有很多,主要就是在文件传输的方面,文件压缩的好处就不需要赘述,因为无论是开发者,还是 ...
- 还有什么不能做?——细谈在C#中读写Excel系列文章之一
在写这一系列文章之前,我要首先申明一个事情,那就是自打.NET一开始我们大概就已经开始使用它在自己的程序中与Excel进行交互了,诸如从Excel中读取数据显示报表.将程序中的数据导出到Excel中等 ...
- c# 中wpfexcel_VS2017下编写C#程序读写Excel文件
原标题:VS2017下编写C#程序读写Excel文件 前言: 有时候我们需要对Excel文件进行特殊处理,这种情况下写个小程序是很方便的.最近刚开始学C#,正好有同学需要处理个Excel文件,我就写了 ...
- R读写Excel文件中数据的方法
用R语言读写Excel的方法有很多,但每种方法都有让人头疼的地方,比如xlsx包的代码复杂,只支持Excel2007:RODBC不易理解,限制太多,程序不稳定,会出各种怪毛病.另存为csv格式的方法倒 ...
最新文章
- Windows中配置java变量环境
- python3 http服务端响应源码
- 利用graphviz模块展示斐波那契数列的递归函数调用图(Python)
- python在线教学-微软推出 Python 免费在线教程视频
- 两步实现spark集群
- Could not find destination factory for transport
- 【MySQL】日期函数:日期、时间增减
- Vaadin应用程序中的EJB查找
- 【渝粤题库】广东开放大学 基础写作 形成性考核
- node.js模块和包
- python一张图学懂_【python系统学习07】一张图看懂字典并学会操作
- 数据结构 python堆_Python中的堆栈数据结构是什么?
- android vitamio 教程,使用vitamio开发步骤
- jenkins JDK的集成
- MAC下学习UNIX网络编程
- 浅识Tomcat10和Tomcat9的区别
- SpringBoot:yml文件详解
- 【卡尔曼滤波原理及基本认知】
- ardruino控制继电器_arduino控制继电器
- 有赞搜索系统的技术内幕
热门文章
- 为什么onenote一直在加载_2.为什么人人都需要OneNote?
- 老挑毛u盘一键装系统计算机意外地,u盘装系统 重装Win7系统出现提示计算机意外的重新启动或遇到错误怎么处理 我已经删除了所有分...
- 简单有效的低照度增强
- 路由器桥接:老式路由器桥接隐藏网络并开启无线隐藏网络
- 我只说一次,这样用领英开发国外客户,屡试不爽!
- C++ 封装 信息隐藏
- 走近计算机,走进二进制,爪哇国的诞生
- 爪哇国新游记之十八----泛型栈类
- LVIS Challenge 2021长尾分布实例分割冠军解决方案
- android广播内容显示在屏幕上,如何将手机屏幕投影到计算机显示器上?