.net试用MiniExcel优雅的操作Excel

2023-10-13 05:20

本文主要是介绍.net试用MiniExcel优雅的操作Excel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

哈喽,大家好!我是指北君。

大家有没有过这样的经历:开发某个项目,需要调用Excel控件去生成Excel文件、填充数据、改变格式等等,常常在测试环境中一切正常,但在生产环境却无法正常调用Excel,不是安装的Excel版本不正确导致调用错误,就是因为超额数据量导致调用控件消耗内存过大,无法顺利解决问题,搞得码农心态崩溃,导致DeadLine延迟?现在好了,铛铛铛,值得推荐的一款实用控件来了:MiniExcel!

1. 控件介绍

MiniExcel简单、高效避免’OOM’的.NET处理Excel查、写、填充数据工具。

‘OOM’,全称“Out Of Memory”,意思是“内存用完了”。它来源于java.lang.OutOfMemoryError。

目前主流框架大多需要将数据全载入到内存方便操作,但这会导致内存消耗问题,MiniExcel尝试以 Stream角度写底层算法逻辑,能让原本1000多MB占用降低到几MB,避免内存不够情况,而且不再要求系统本身必须安装Excel。

项目目标是:力求做最简单、最实用的Excel控件!

这个项目已经被dotNET China收录,成为一个很有前途的开源项目,并在Gitee上得到站点推荐,得到了1.1KStars。

2. 特点简述

  • 支持.Net4.5,.Net5.0,Core .Net2.0。

  • 低内存耗用,避免’OOM’(out of memoery)、频繁 Full GC 情况。

  • 支持即时操作每行数据。

  • 兼具搭配 LINQ 延迟查询特性,能办到低消耗、快速分页等复杂查询。

  • 轻量,不需要安装 Microsoft Office、COM+,DLL小于150KB。

  • 简便操作的 API 风格。

3. 安装

这个项目是通过NuGet包实现安装。简单来说,就是在.NET CLI模式下,执行如下命令即可自动安装:

    dotnet add package MiniExcel --version 1.23.2

4. 性能比较与测试

Benchmarks 逻辑可以在 MiniExcel.Benchmarks 中进行查看或是提交 PR,运行指令如下:

    dotnet run -p .\\benchmarks\\MiniExcel.Benchmarks\\ -c Release -f netcoreapp3.1 

这篇关于.net试用MiniExcel优雅的操作Excel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201037

相关文章

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Python创建Excel的4种方式小结

《Python创建Excel的4种方式小结》这篇文章主要为大家详细介绍了Python中创建Excel的4种常见方式,文中的示例代码简洁易懂,具有一定的参考价值,感兴趣的小伙伴可以学习一下... 目录库的安装代码1——pandas代码2——openpyxl代码3——xlsxwriterwww.cppcns.c

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Python给Excel写入数据的四种方法小结

《Python给Excel写入数据的四种方法小结》本文主要介绍了Python给Excel写入数据的四种方法小结,包含openpyxl库、xlsxwriter库、pandas库和win32com库,具有... 目录1. 使用 openpyxl 库2. 使用 xlsxwriter 库3. 使用 pandas 库

C++实现封装的顺序表的操作与实践

《C++实现封装的顺序表的操作与实践》在程序设计中,顺序表是一种常见的线性数据结构,通常用于存储具有固定顺序的元素,与链表不同,顺序表中的元素是连续存储的,因此访问速度较快,但插入和删除操作的效率可能... 目录一、顺序表的基本概念二、顺序表类的设计1. 顺序表类的成员变量2. 构造函数和析构函数三、顺序表

使用C++实现单链表的操作与实践

《使用C++实现单链表的操作与实践》在程序设计中,链表是一种常见的数据结构,特别是在动态数据管理、频繁插入和删除元素的场景中,链表相比于数组,具有更高的灵活性和高效性,尤其是在需要频繁修改数据结构的应... 目录一、单链表的基本概念二、单链表类的设计1. 节点的定义2. 链表的类定义三、单链表的操作实现四、

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

Python利用自带模块实现屏幕像素高效操作

《Python利用自带模块实现屏幕像素高效操作》这篇文章主要为大家详细介绍了Python如何利用自带模块实现屏幕像素高效操作,文中的示例代码讲解详,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、获取屏幕放缩比例2、获取屏幕指定坐标处像素颜色3、一个简单的使用案例4、总结1、获取屏幕放缩比例from