C# Export to Excel: Step by Step Tutorial

It is necessary to work with different formats of Excel spreadsheets and use C Sharp Export to Excel functionalities. Projects may need to use spreadsheet data in specific formats, including .xml, .csv, .xls, .xlsx , and .json. In this tutorial, we will learn how to export Excel spreadsheet data into different formats using C#. It can be simple, even without dependency on the legacy Microsoft.Office.Interop.Excel library.


Step 1

1. Get the IronXL Library

For an easy way to work with Excel files in .NET Core, try IronXL. Download IronXL DLL or install with NuGet for free use in development projects.

Install-Package IronXL.Excel

Download and add its reference in your project. IronXL classes can be accessed using IronXL namespace.


How to Tutorial

2. Export to Excel in C#

IronXL provides the most accessible way to export the data to Excel with ( .xls, .xlsx and .csv) files in .NET applications. It is also possible to export the data to .json and .xml files. Let's see one by one how easy it can be to export Excel file data into these formats.


3. C# Export to .XLSX File

It is very easy to export an Excel file with an .xlsx extension. Let's see the example. In the code below, our XlsFile.xls file exists in bin>Debug folder of the project.

Remember: Don't forget to write extension with file name while importing or exporting.

By default, new Excel files will be created in the bin>Debug folder of the project. If we want to create a new file in a custom path then we can use wb.SaveAs(@"E:\IronXL\NewXlsxFile.xlsx");. Read the tutorial here to learn more about how to export Excel files in .NET.

/**
Export to XLSX
anchor-c-export-to-xlsx-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("XlsFile.xls");//Import .xls, .csv, or .tsv file
    wb.SaveAs("NewXlsxFile.xlsx");//Export as .xlsx file
}
/**
Export to XLSX
anchor-c-export-to-xlsx-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("XlsFile.xls");//Import .xls, .csv, or .tsv file
    wb.SaveAs("NewXlsxFile.xlsx");//Export as .xlsx file
}
'''
'''Export to XLSX
'''anchor-c-export-to-xlsx-file
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("XlsFile.xls") 'Import .xls, .csv, or .tsv file
	wb.SaveAs("NewXlsxFile.xlsx") 'Export as .xlsx file
End Sub
VB   C#

4. C# Export to .XLS File

It is also possible to export a file with the .xls extension using IronXL. For this purpose, lets see the example below.

/**
Export to XLS
anchor-c-export-to-xls-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("XlsxFile.xlsx");//Import .xlsx, .csv or .tsv file
    wb.SaveAs("NewXlsFile.xls");//Export as .xls file
}
/**
Export to XLS
anchor-c-export-to-xls-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("XlsxFile.xlsx");//Import .xlsx, .csv or .tsv file
    wb.SaveAs("NewXlsFile.xls");//Export as .xls file
}
'''
'''Export to XLS
'''anchor-c-export-to-xls-file
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("XlsxFile.xlsx") 'Import .xlsx, .csv or .tsv file
	wb.SaveAs("NewXlsFile.xls") 'Export as .xls file
End Sub
VB   C#

5. C# Export to .CSV File

We can easily export our .xlsx or .xls file into .csv using IronXL. Let's see one case that shows how to export Excel file to CSV (.csv) file.

/**
Export to CSV
anchor-c-export-to-csv-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");  //Import .xlsx or xls file          
    wb.SaveAsCsv("NewCsvFile.csv"); //Export as .xls file
}
/**
Export to CSV
anchor-c-export-to-csv-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");  //Import .xlsx or xls file          
    wb.SaveAsCsv("NewCsvFile.csv"); //Export as .xls file
}
'''
'''Export to CSV
'''anchor-c-export-to-csv-file
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Import .xlsx or xls file
	wb.SaveAsCsv("NewCsvFile.csv") 'Export as .xls file
End Sub
VB   C#

The above code will create the following three CSV files:

It is very simple to understand why it created three .csv files. It is because sample.xlsx contains three Worksheets. Therefore, it will create three .csv files, and each Worksheet's Excel file data would export to the corresponding .csv file.

We can see the number of sheets in sample.xlsx here:

However, if there is one worksheet in the Excel file, then just one .csv file would be created.


6. C# Export to .XML File:

We can export our Excel file data into .XML file format. The below code will export sample.xlsx file data into a .xml file. It will create three XML files because sample.xlsx has three worksheets, same as in the earlier example.

/**
Export to XML
anchor-c-export-to-xml-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");  //Import .xlsx, .xls or .csv file          
    wb.SaveAsCsv("NewXmlFile.xml"); //Export as .xml file
}
/**
Export to XML
anchor-c-export-to-xml-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");  //Import .xlsx, .xls or .csv file          
    wb.SaveAsCsv("NewXmlFile.xml"); //Export as .xml file
}
'''
'''Export to XML
'''anchor-c-export-to-xml-file
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'Import .xlsx, .xls or .csv file
	wb.SaveAsCsv("NewXmlFile.xml") 'Export as .xml file
End Sub
VB   C#

7. C# Export to .JSON File

Using IronXL makes it very easy to export Excel file data into JSON file format, as in the below code example. The code will export sample.xlsx file data into a .json file. It will again create three .json files due to the three Worksheets of sample.xlsx.

/**
Export to JSON
anchor-c-export-to-json-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx"); //import Excel file
    wb.SaveAsJson("NewjsonFile.json"); //Export as JSON file
}
/**
Export to JSON
anchor-c-export-to-json-file
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx"); //import Excel file
    wb.SaveAsJson("NewjsonFile.json"); //Export as JSON file
}
'''
'''Export to JSON
'''anchor-c-export-to-json-file
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'import Excel file
	wb.SaveAsJson("NewjsonFile.json") 'Export as JSON file
End Sub
VB   C#

Tutorial Quick Access

API Reference

Read the IronXL Documentation including all namespaces, feature sets, methods fields, classes, and enums.

Read API Reference