a .NET library that can read/write Office formats without Microsoft Office installed. No COM+, no interop.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Antony Liu 1088c04c79 Fixes bug #61468, caused by a confusing OOXML spec design as noted in JavaDocs added in r1795648. 3 weeks ago
.github Update CI.yml 4 weeks ago
.nuke Upgrade to NUKE 9 and remove obsolete NET 6 targets 6 months ago
OpenXmlFormats [Bug-61354] fix issue with extracting text from Word docs. 4 weeks ago
benchmarks/NPOI.Benchmarks Reduce warning output during build and treat new warnings as errors 5 months ago
build Update Version to 2.7.4 1 month ago
logo checkin logo 9 years ago
main Fixes bug #61468, caused by a confusing OOXML spec design as noted in JavaDocs added in r1795648. 3 weeks ago
ooxml Merge pull request #1597 from antony-liu/poi/v3.17-patch13 3 weeks ago
openxml4Net bug 61296: deduplicate ooxml schema constants 4 weeks ago
scratchpad Remove zero-length array allocations and use collection expression 4 months ago
solution Upgrade to NUKE 9 and remove obsolete NET 6 targets 6 months ago
testcases Fixes bug #61468, caused by a confusing OOXML spec design as noted in JavaDocs added in r1795648. 3 weeks ago
tools update the solution in tool folder 2 years ago
.editorconfig Make non-public API methods static where applicable 4 months ago
.gitattributes fix LF formatting issue 13 years ago
.gitignore Add benchmarks project 2 years ago
.tgitconfig Add tgit.icon project config 12 years ago
Directory.Build.props Update Version to 2.7.4 1 month ago
Directory.Packages.props Fully remove pkcs 2 months ago
LICENSE update 2.1 documents 11 years ago
README.md Update README.md 3 months ago
build.cmd Add NUKE build infrastructure 2 years ago
build.ps1 Upgrade to NUKE 8 1 year ago
build.sh Upgrade to NUKE 8 1 year ago
npoi.snk Share assembly sign key file between projects 2 years ago
test.runsettings improved FLOOR|CEILING.MATH function 2 years ago

README.md

What's NPOI

NuGet Nuget Ranking! Discord License traffic GitHub contributors
This project is the .NET version of Apache POI project. With NPOI, you can read/write Office 2003/2007 files very easily.

Donation

If you profits/benefits from NPOI, please sponsor me via Github Sponsor or donate this project. Thank you!

Get Started with NPOI

NPOI Tutorial on Youtube

How NPOI succeed

Getting Started with NPOI

How to use NPOI on Linux

Useful Packages based on NPOI

NPOI Changelog

NPOI code examples (This example repo is private. You can get access by sponsoring me)

Advantage of NPOI

a. It's totally free to use

b. Cover most features of Excel (cell style, data format, formula and so on)

c. Supported formats: xls, xlsx, docx.

d. Designed to be interface-oriented (take a look at NPOI.SS namespace)

e. Support not only export but also import

f. Real successful cases all over the world

g. Works on both Windows and Linux

System Requirement

.NET Standard 2.1 (.NET Core 3.x, .NET 5, .NET 6)

.NET Standard 2.0 (.NET Core 2.x)

.NET Framework 4.0 and above

Contributors

Contributors

Sponsored By

drawing

Flag Counter