MiniExcel 1.34.2
Prefix Reserveddotnet add package MiniExcel --version 1.34.2
NuGet\Install-Package MiniExcel -Version 1.34.2
<PackageReference Include="MiniExcel" Version="1.34.2" />
paket add MiniExcel --version 1.34.2
#r "nuget: MiniExcel, 1.34.2"
// Install MiniExcel as a Cake Addin #addin nuget:?package=MiniExcel&version=1.34.2 // Install MiniExcel as a Cake Tool #tool nuget:?package=MiniExcel&version=1.34.2
This project is part of the .NET Foundation and operates under their code of conduct.
Introduction
MiniExcel is simple and efficient to avoid OOM's .NET processing Excel tool.
At present, most popular frameworks need to load all the data into the memory to facilitate operation, but it will cause memory consumption problems. MiniExcel tries to use algorithm from a stream to reduce the original 1000 MB occupation to a few MB to avoid OOM(out of memory).
Features
- Low memory consumption, avoid OOM (out of memory) and full GC
- Support
real-time
operation of each row of data - Support LINQ deferred execution, it can do low-consumption, fast paging and other complex queries
- Lightweight, without Microsoft Office installed, no COM+, DLL size is less than 150KB
- Easy API style to read/write/fill excel
Get Started
Installation
You can install the package from NuGet
Release Notes
Please Check Release Notes
TODO
Please Check TODO
Performance
Benchmarks logic can be found in MiniExcel.Benchmarks , and test cli
dotnet run -p .\benchmarks\MiniExcel.Benchmarks\ -c Release -f netcoreapp3.1 -- -f * --join
Output from the latest run is :
BenchmarkDotNet=v0.12.1, OS=Windows 10.0.19042
Intel Core i7-7700 CPU 3.60GHz (Kaby Lake), 1 CPU, 8 logical and 4 physical cores
[Host] : .NET Framework 4.8 (4.8.4341.0), X64 RyuJIT
Job-ZYYABG : .NET Framework 4.8 (4.8.4341.0), X64 RyuJIT
IterationCount=3 LaunchCount=3 WarmupCount=3
Benchmark History : Link
Import/Query Excel
Logic : Test1,000,000x10.xlsx as performance test basic file, 1,000,000 rows * 10 columns "HelloWorld" cells, 23 MB file size
Library | Method | Max Memory Usage | Mean |
---|---|---|---|
MiniExcel | 'MiniExcel QueryFirst' | 0.109 MB | 0.0007264 sec |
ExcelDataReader | 'ExcelDataReader QueryFirst' | 15.24 MB | 10.66421 sec |
MiniExcel | 'MiniExcel Query' | 17.3 MB | 14.17933 sec |
ExcelDataReader | 'ExcelDataReader Query' | 17.3 MB | 22.56508 sec |
Epplus | 'Epplus QueryFirst' | 1,452 MB | 18.19801 sec |
Epplus | 'Epplus Query' | 1,451 MB | 23.64747 sec |
OpenXmlSDK | 'OpenXmlSDK Query' | 1,412 MB | 52.00327 sec |
OpenXmlSDK | 'OpenXmlSDK QueryFirst' | 1,413 MB | 52.34865 sec |
ClosedXml | 'ClosedXml QueryFirst' | 2,158 MB | 66.18897 sec |
ClosedXml | 'ClosedXml Query' | 2,184 MB | 191.43412 sec |
Export/Create Excel
Logic : create a total of 10,000,000 "HelloWorld" excel
Library | Method | Max Memory Usage | Mean |
---|---|---|---|
MiniExcel | 'MiniExcel Create Xlsx' | 15 MB | 11.53181 sec |
Epplus | 'Epplus Create Xlsx' | 1,204 MB | 22.50971 sec |
OpenXmlSdk | 'OpenXmlSdk Create Xlsx' | 2,621 MB | 42.47399 sec |
ClosedXml | 'ClosedXml Create Xlsx' | 7,141 MB | 140.93992 sec |
Documents
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net45 is compatible. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.5
- No dependencies.
-
.NETStandard 2.0
- No dependencies.
-
net6.0
- No dependencies.
NuGet packages (102)
Showing the top 5 NuGet packages that depend on MiniExcel:
Package | Downloads |
---|---|
GuoKun.CPS
国坤CPS库 |
|
DH.MiniExcel
DH框架的Excel处理库。基于https://github.com/mini-software/MiniExcel |
|
NF.Utilities
公共类库,增加DataTable转excel |
|
BootstrapBlazor.TableExport
Bootstrap UI components extensions of export |
|
TXQ.Utils
Package Description |
GitHub repositories (9)
Showing the top 5 popular GitHub repositories that depend on MiniExcel:
Repository | Stars |
---|---|
Scighost/Starward
Game Launcher for miHoYo - 米家游戏启动器
|
|
dotnetcore/BootstrapBlazor
Bootstrap Blazor is an enterprise-level UI component library based on Bootstrap and Blazor.
|
|
dotnetcore/Magicodes.IE
Import and export general library, support Dto import and export, template export, fancy export and dynamic export, support Excel, Csv, Word, Pdf and Html.
|
|
xunkong/xunkong
记录旅途中发生的事
|
|
izhaorui/Zr.Admin.NET
🎉ZR.Admin.NET是一款前后端分离的、跨平台基于RBAC的通用权限管理后台。ORM采用SqlSugar。前端采用Vue、AntDesign,支持多租户、缓存、任务调度、支持统一异常处理、接口限流、支持一键生成前后端代码,支持动态国际化翻译(Vue3),等诸多黑科技,代码简洁易懂、易扩展让开发更简单、更通用。
|
Version | Downloads | Last updated | |
---|---|---|---|
1.34.2 | 62,540 | 9/14/2024 | |
1.34.1 | 67,230 | 8/10/2024 | |
1.34.0 | 45,503 | 7/21/2024 | |
1.33.0 | 44,411 | 7/7/2024 | |
1.32.1 | 92,807 | 5/16/2024 | |
1.32.0 | 15,969 | 5/12/2024 | |
1.31.3 | 375,152 | 12/27/2023 | |
1.31.2 | 556,416 | 8/10/2023 | |
1.31.0 | 229,300 | 5/28/2023 | |
1.30.3 | 86,914 | 5/1/2023 | |
1.30.2 | 419,382 | 2/21/2023 | |
1.30.1 | 33,550 | 2/7/2023 | |
1.30.0 | 189,573 | 12/27/2022 | |
1.29.0 | 184,610 | 11/9/2022 | |
1.28.5 | 19,072 | 10/30/2022 | |
1.28.4 | 3,001 | 10/29/2022 | |
1.28.2 | 2,985 | 10/29/2022 | |
1.28.1 | 24,787 | 10/22/2022 | |
1.28.0 | 67,375 | 9/19/2022 | |
1.27.0 | 3,757 | 9/18/2022 | |
1.26.7 | 10,999 | 9/9/2022 | |
1.26.6 | 10,450 | 9/4/2022 | |
1.26.5 | 293,032 | 6/30/2022 | |
1.26.4 | 6,560 | 6/26/2022 | |
1.26.3 | 226,631 | 6/7/2022 | |
1.26.2 | 190,768 | 4/21/2022 | |
1.26.1 | 10,351 | 4/17/2022 | |
1.26.0 | 218,356 | 4/12/2022 | |
1.24.2 | 3,287 | 3/17/2022 | |
1.24.1 | 4,827 | 3/15/2022 | |
1.24.0 | 14,880 | 3/9/2022 | |
1.23.2 | 7,397 | 3/4/2022 | |
1.23.1 | 225,959 | 2/14/2022 | |
1.22.0 | 3,258 | 2/12/2022 | |
0.21.5 | 31,780 | 2/7/2022 | |
0.21.4 | 8,402 | 1/27/2022 | |
0.19.1 | 277,223 | 11/15/2021 | |
0.19.0 | 12,739 | 10/21/2021 | |
0.18.0 | 16,257 | 9/13/2021 | |
0.17.5 | 247,356 | 8/20/2021 | |
0.17.4 | 5,061 | 8/17/2021 | |
0.17.2 | 252,213 | 6/30/2021 | |
0.17.1 | 6,217 | 6/23/2021 | |
0.17.0 | 5,983 | 6/21/2021 | |
0.16.1 | 4,520 | 6/19/2021 | |
0.16.0 | 3,256 | 6/19/2021 | |
0.15.5 | 4,874 | 6/13/2021 | |
0.15.4 | 3,428 | 6/8/2021 | |
0.15.2 | 10,058 | 5/20/2021 | |
0.15.1 | 3,176 | 5/19/2021 | |
0.14.8 | 3,637 | 5/18/2021 | |
0.14.7 | 3,446 | 5/17/2021 | |
0.14.6 | 4,638 | 5/13/2021 | |
0.14.5 | 3,591 | 5/12/2021 | |
0.14.4 | 3,186 | 5/12/2021 | |
0.14.3 | 4,712 | 5/10/2021 | |
0.14.2 | 3,171 | 5/10/2021 | |
0.14.1 | 4,577 | 5/7/2021 | |
0.14.0 | 3,253 | 5/7/2021 | |
0.13.5 | 4,842 | 4/30/2021 | |
0.13.4 | 5,234 | 4/26/2021 | |
0.13.3 | 5,385 | 4/22/2021 | |
0.13.2 | 4,869 | 4/20/2021 | |
0.13.1 | 3,330 | 4/18/2021 | |
0.13.0 | 3,136 | 4/16/2021 | |
0.12.2 | 3,046 | 4/15/2021 | |
0.12.1 | 2,958 | 4/14/2021 | |
0.12.0-beta | 2,238 | 4/13/2021 | |
0.11.1 | 4,418 | 4/9/2021 | |
0.11.0 | 3,055 | 4/8/2021 | |
0.10.3 | 3,039 | 4/6/2021 | |
0.10.2 | 2,989 | 4/6/2021 | |
0.10.1 | 3,030 | 4/4/2021 | |
0.10.0 | 3,016 | 4/2/2021 | |
0.9.1 | 3,060 | 4/1/2021 | |
0.9.0 | 2,963 | 4/1/2021 | |
0.8.0 | 3,242 | 3/29/2021 | |
0.7.0 | 3,010 | 3/28/2021 | |
0.6.0 | 3,030 | 3/26/2021 | |
0.5.0 | 2,988 | 3/26/2021 | |
0.4.0 | 3,005 | 3/25/2021 | |
0.3.0 | 2,970 | 3/21/2021 | |
0.2.3 | 3,089 | 3/20/2021 | |
0.2.2 | 3,318 | 3/18/2021 | |
0.2.1 | 3,219 | 3/17/2021 | |
0.2.0 | 3,259 | 3/15/2021 | |
0.1.0-preview | 2,418 | 3/15/2021 | |
0.0.7-beta | 2,406 | 3/14/2021 | |
0.0.6-beta | 2,435 | 3/14/2021 | |
0.0.5-beta | 2,536 | 3/14/2021 | |
0.0.4-beta | 2,435 | 3/14/2021 | |
0.0.3-beta | 2,403 | 3/13/2021 | |
0.0.2-beta | 2,359 | 3/4/2021 | |
0.0.1-beta | 2,349 | 3/3/2021 |
Please Check [Release Notes](https://github.com/mini-software/MiniExcel/tree/master/docs)