C# Exportar a Excel: Tutorial paso a paso

Chaknith Bin
Chaknith Bin
17 de junio, 2020
Actualizado 9 de febrero, 2025
Compartir:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Es necesario trabajar con diferentes formatos de hojas de cálculo Excel y utilizar las funcionalidades de C Sharp Export to Excel. Los proyectos pueden necesitar utilizar datos de hojas de cálculo en formatos específicos, incluyendo .xml, .csv, .xls, .xlsx y .json. En este tutorial, aprenderemos a exportar datos de hojas de cálculo Excel a diferentes formatos utilizando C#. Puede ser sencillo, incluso sin depender de la biblioteca heredada Microsoft.Office.Interop.Excel.


Primer paso

1. Obtener la biblioteca IronXL

Para trabajar fácilmente con archivos Excel en .NET Core, prueba IronXL. Descargar IronXL DLL o instalar con NuGet para uso gratuito en proyectos de desarrollo.

Install-Package IronXL.Excel

Descárgalo y añade su referencia en tu proyecto. IronXL classes can be accessed using IronXL namespace.


Tutorial

2. Exportar a Excel en C#

IronXL proporciona la forma más accesible de exportar los datos a Excel con archivos (.xls, .xlsx y .csv) en aplicaciones .NET. También es posible exportar los datos a archivos .json y .xml. Veamos uno por uno lo fácil que puede ser exportar datos de archivos Excel a estos formatos.


3. C# Exportar a archivo .XLSX

Es muy fácil exportar un archivo de Excel con una extensión .xlsx. Veamos el ejemplo. En el código a continuación, nuestro archivo XlsFile.xls existe en la carpeta bin>Debug del proyecto.

Recuerde: No olvide escribir la extensión con el nombre del archivo al importar o exportar.

De forma predeterminada, los nuevos archivos de Excel se crearán en la carpeta bin>Debug del proyecto. Si queremos crear un nuevo archivo en una ruta personalizada, podemos usar wb.SaveAs(@"E:\IronXL\NewXlsxFile.xlsx");. Lea el tutorial aquí para obtener más información sobre cómo exportar archivos de Excel en .NET.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-export-to-excel-xlsx.cs
using IronXL;

// Import .xls, .csv, or .tsv file
WorkBook workbook = WorkBook.Load("XlsFile.xls");

// Export as .xlsx file
workbook.SaveAs("newFile.xlsx");
Imports IronXL

' Import .xls, .csv, or .tsv file
Private workbook As WorkBook = WorkBook.Load("XlsFile.xls")

' Export as .xlsx file
workbook.SaveAs("newFile.xlsx")
$vbLabelText   $csharpLabel

4. C# Exportar a archivo .XLS

También es posible exportar un archivo con la extensión .xls utilizando IronXL. Para ello, veamos el siguiente ejemplo.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-export-to-excel-xls.cs
using IronXL;

// Import .xlsx, .csv or .tsv file
WorkBook workbook = WorkBook.Load("XlsxFile.xlsx");

// Export as .xls file
workbook.SaveAs("newFile.xls");
Imports IronXL

' Import .xlsx, .csv or .tsv file
Private workbook As WorkBook = WorkBook.Load("XlsxFile.xlsx")

' Export as .xls file
workbook.SaveAs("newFile.xls")
$vbLabelText   $csharpLabel

5. C# Exportar a archivo .CSV

Podemos exportar fácilmente nuestro archivo .xlsx o .xls a .csv usando IronXL. Veamos un caso que muestra cómo exportar un archivo de Excel a un archivo CSV (.csv).

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-export-to-excel-csv.cs
using IronXL;

//  Import .xlsx or xls file
WorkBook workbook = WorkBook.Load("sample.xlsx");

// Export as .xls file
workbook.SaveAsCsv("newFile.csv");
Imports IronXL

'  Import .xlsx or xls file
Private workbook As WorkBook = WorkBook.Load("sample.xlsx")

' Export as .xls file
workbook.SaveAsCsv("newFile.csv")
$vbLabelText   $csharpLabel

El código anterior creará los tres archivos CSV siguientes:

Doc2 2 related to 5. C# Exportar a archivo .CSV

Es muy sencillo entender por qué creó tres archivos .csv. Es porque sample.xlsx contiene tres hojas de trabajo. Por lo tanto, se crearán tres archivos .csv, y los datos del archivo Excel de cada hoja de cálculo se exportarán al archivo .csv correspondiente.

Podemos ver el número de hojas en sample.xlsx aquí:

Doc2 1 related to 5. C# Exportar a archivo .CSV

Sin embargo, si hay una sola hoja de cálculo en el archivo Excel, entonces se crearía solo un archivo .csv.


6. C# Exportar a archivo .XML

Podemos exportar los datos de nuestro archivo Excel al formato de archivo .XML. El siguiente código exportará los datos del archivo sample.xlsx a un archivo .xml. Creará tres archivos XML porque sample.xlsx tiene tres hojas de trabajo, igual que en el ejemplo anterior.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-export-to-excel-xml.cs
using IronXL;

// Import .xlsx, .xls or .csv file
WorkBook workbook = WorkBook.Load("sample.xlsx");

// Export as .xml file
workbook.SaveAsXml("newFile.xml");
Imports IronXL

' Import .xlsx, .xls or .csv file
Private workbook As WorkBook = WorkBook.Load("sample.xlsx")

' Export as .xml file
workbook.SaveAsXml("newFile.xml")
$vbLabelText   $csharpLabel

7. C# Exportar a archivo .JSON

El uso de IronXL hace que sea muy fácil exportar datos de archivos Excel a formato de archivo JSON, como en el siguiente ejemplo de código. El código exportará los datos del archivo sample.xlsx a un archivo .json. Creará nuevamente tres archivos .json debido a las tres hojas de cálculo de sample.xlsx.

:path=/static-assets/excel/content-code-examples/how-to/c-sharp-export-to-excel-json.cs
using IronXL;

// Import Excel file
WorkBook workbook = WorkBook.Load("sample.xlsx");

// Export as JSON file
workbook.SaveAsJson("newFile.json");
Imports IronXL

' Import Excel file
Private workbook As WorkBook = WorkBook.Load("sample.xlsx")

' Export as JSON file
workbook.SaveAsJson("newFile.json")
$vbLabelText   $csharpLabel

Acceso rápido a tutoriales

Documentation related to Acceso rápido a tutoriales

Referencia API

Lea la Documentación de IronXL incluyendo todos los espacios de nombres, conjuntos de características, campos de métodos, clases y enums.

Read Referencia API
Chaknith Bin
Ingeniero de software
Chaknith trabaja en IronXL e IronBarcode. Tiene una gran experiencia en C# y .NET, ayudando a mejorar el software y a apoyar a los clientes. Sus conocimientos de las interacciones con los usuarios contribuyen a mejorar los productos, la documentación y la experiencia general.