Examples Index

All runnable examples are in examples/. Build and run with:

dotnet run --project examples/ExampleName/ExampleName.csproj

Generated files are written to examples/output/.

By Example

ExampleFormatTopics
UsageSamplesxlsx, xlsm, docx, pptxBroad user-facing samples, macro preservation, read-back checks
Phase0WriteExamplexlsxFirst workbook, create sheet, rows, cells, save
Phase1InteropExamplexlsxJava POI interoperability, read/write fixtures
Phase25ImagesExamplexlsxImage embedding with anchors
Phase3InterfaceExamplexlsxIWorkbook / ISheet / IRow / ICell interfaces
Phase32DocxExampledocxParagraphs, runs, inline image, rotation
Phase33PptxExamplepptxSlides, pictures, anchors, rotation, flip
Phase34AgileEncryptionExamplexlsxAgile encryption and decryption
Phase4HssfXlsExamplexlsBIFF8 bootstrap write/read
Phase5FormulaEvaluatorExamplexlsxLimited formula evaluator, cached formula results
Phase7CellTypesExamplexlsxNumeric, string, boolean, formula, and error cell handling
Phase8CoreOnlyExamplexlsxCore package without Formula
EdgeCaseProbeExamplexlsx, docx, pptxEdge cases, encrypted sparse workbook, invalid inputs

Recommended Starting Point

Start with UsageSamples if you want practical examples for the currently supported user workflows. It creates:

Use the phase-specific examples when you need a smaller sample for one API area.

Java Fixture Examples

Some examples rely on fixtures generated by the Java Apache POI test project.

mvn test -f tests/DotnetPoi.Interop.Tests/java/pom.xml -Dtest=WriteForDotnetTest

Run this before Phase1InteropExample or Phase7CellTypesExample if the expected fixture file is missing.