Create Excel files from C# without office [duplicate]

If you’re interested in making .xlsx (Office 2007 and beyond) files, you’re in luck. Office 2007+ uses OpenXML which for lack of a more apt description is XML files inside of a zip named .xlsx

Take an excel file (2007+) and rename it to .zip, you can open it up and take a look. If you’re using .NET 3.5 you can use the System.IO.Packaging library to manipulate the relationships & zipfile itself, and linq to xml to play with the xml (or just DOM if you’re more comfortable).

Otherwise id reccomend DotNetZip, a powerfull library for manipulation of zipfiles.

OpenXMLDeveloper has lots of resources about OpenXML and you can find more there.

If you want .xls (2003 and below) you’re going to have to look into 3rd party libraries or perhaps learn the file format yourself to achieve this without excel installed.

Leave a Comment