Yes, Koogra only reads. EPPlus only supports .xlsx and is buggy in edge cases.
EPPlus does not work with the XLS format.
It seems EPPlus Worksheet API is not a thread safe (at least some cell operations). Different worksheets could be processed in parallel, as mentioned here.
Jet/ACE OLE DB
either read worksheet as strings, or as typed columns, so you either lose numbers precision or you must have headers in the first row. Thus, they are to be avoided.NPOI
:Jet
:Koogra
:EDR
is 14:8:7:5.EPPlus
:NPOI
:Koogra
:EDR
is 52:36:20:16.EPPlus
can be a bit faster than EDR
.EDR
and Koogra
don't explicitly support errors. EDR
reads them as usual strings, Koogra
-- as blank cells.NPOI
and EPPlus
do.EDR
gets this fine. So, no to Koogra
.NPOI
is complicated, 5 dlls of 4 MB. Koogra
and EDR
are simple, 200 KB and two dlls (themselves and zip) each.EDR
works as a IDataReader
, so it reads data sequentially. It also has built-in function to get a DataSet
. With sequential read yoou can only go through first sheet in the work book. Koogra
supports random access to cells and sheets.EDR
is based on SharpZip
, Koogra
is based on Ionic.Zip
. The former allows to open a file from .zip a Stream
which can be benefical for other parts of the project.I haven't looked at writing aspects of NPOI
, so without the need to distinguish errors, I would go with EPPlus
for .xlsx and with EDR for reading .xls.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With