# Cómo convertir XLSX a CSV, JSON, XML y más en C#
`IronXL` convierte archivos de Excel a múltiples formatos, incluyendo JSON, CSV, XML y formatos antiguos de Excel como XLS, utilizando comandos sencillos de una línea que eliminan el análisis manual.
`IronXL` convierte cualquier archivo de Excel en varios formatos, proporcionando a los desarrolladores herramientas para [trabajar con Excel en C# sin Interop](https://ironsoftware.com/csharp/excel/get-started/c-sharp-excel-interop/). Ya sea migrando datos entre sistemas, creando exportaciones de datos para aplicaciones web o integrándose con sistemas heredados, `IronXL` simplifica el proceso de conversión.
Estos formatos incluyen: JSON para las API web modernas, CSV para el intercambio de datos, XML para el almacenamiento de datos estructurados y formatos antiguos de Excel como XLS para la compatibilidad con versiones anteriores. Cada formato sirve para casos de uso específicos: CSV funciona bien para las importaciones de bases de datos, JSON se integra con las API REST y XML mantiene las relaciones jerárquicas de datos.
Este artículo demuestra cómo usar `IronXL` para convertir a XML, CSV, JSON y exportar hojas de cálculo de Excel como conjuntos de datos para integración directa con controles de datos .NET.
*as-heading:2(Inicio rápido: Convertir un archivo XLSX a CSV en una línea)*
Este ejemplo muestra cómo `IronXL` convierte un libro de Excel existente en un archivo CSV en una línea. Cargue su libro y guárdelo directamente como CSV para comenzar de inmediato.
```cs
:title=Quick & Easy XLSX to CSV Conversion
IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv");
```
<div class="hsg-featured-snippet">
<h3>Flujo de trabajo mínimo (5 pasos)</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="trial-license-after-download" href="https://nuget.org/packages/IronXL.Excel/">Descargue la biblioteca C# para convertir XLSX a CSV</a></li>
<li>Cargar una hoja de cálculo XLSX de Excel existente</li>
<li>Acceder o modificar el libro de trabajo</li>
<li>Exportar a archivo CSV u otros formatos, incluyendo JSON, TSV y XML</li>
<li>Revisar los archivos de salida y aplicar un procesamiento adicional</li>
</ol>
</div>
<hr class="separator" />
<p class="main-content__segment-title">Paso 1</p>
## ¿Cómo instalo la biblioteca IronXL?
Primero, instale `IronXL` antes de usarlo en sus aplicaciones. `IronXL` supports [.NET MAUI](https://ironsoftware.com/csharp/excel/get-started/read-create-excel-net-maui/), [Blazor](https://ironsoftware.com/csharp/excel/get-started/blazor-read-excel-file-tutorial/), and traditional .NET applications. Utilice cualquiera de estos métodos de instalación:
Descargar: [https://ironsoftware.com/csharp/excel/docs/](https://ironsoftware.com/csharp/excel/docs/)
O utilice el gestor de paquetes NuGet:
* Haz clic derecho en el nombre de la Solución en el Explorador de Soluciones
* Haz clic en Administrar paquetes de NuGet
* Busque en `IronXL.Excel`
* Instalar
```shell
:ProductInstall
```
<hr class="separator" />
<p class="main-content__segment-title">Tutorial de cómo hacerlo</p>
## ¿Cómo puedo convertir archivos de Excel a diferentes formatos?
`IronXL` proporciona [capacidades de conversión](https://ironsoftware.com/csharp/excel/how-to/convert-spreadsheet-file-types/) que manejan automáticamente el análisis y formato complejos.
Agrega el siguiente código:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/csharp-convert-xlsx-csv-convert.cs
```
El código anterior carga un archivo XLSX, añade un título y, a continuación, lo convierte a varios formatos. Al convertir a CSV, `IronXL` maneja caracteres especiales, celdas de varias líneas y el escape adecuado. Para las exportaciones JSON, crea una representación estructurada de objetos de tus datos de hoja de cálculo. La conversión a XML preserva el formato de las celdas y los tipos de datos. Finalmente, exporta `Worksheet` como `DataSet` para usar con objetos `DataGridView`, lo cual funciona bien cuando [trabaja con `DataTables`](https://ironsoftware.com/csharp/excel/how-to/csharp-datatable-to-csv/).
He aquí otro ejemplo que muestra cómo convertir hojas de cálculo específicas con opciones personalizadas:
```csharp
:path=/static-assets/excel/content-code-examples/how-to/csharp-convert-xlsx-to-csv-4.cs
```
Para escenarios avanzados, se puede [exportar a múltiples formatos simultáneamente](https://ironsoftware.com/csharp/excel/examples/export-excel-spreadsheet/) o manejar archivos de gran tamaño de manera eficiente:
```csharp
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
```
A continuación se muestran los distintos archivos exportados.
<div class="content-img-align-center">
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-convert-xlsx-to-csv/csv-file-export.png"
target="_blank"
>
<img
clase="img-responsive"
src="/img/faq/excel/csharp-convert-xlsx-to-csv/csv-file-export.png"
alt="Exportación de un archivo CSV mostrando valores separados por comas en un editor de texto con datos correctamente escapados" />
</a>
<div class="image-description">
<span class="image-description-text_strong">Figura 1</span> <span class="image-description-text_regular">-</span> <span class="image-description-text_italic">Exportación de archivo CSV</span>
</div>
</div>
</div>
<div class="content-img-align-center">
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-convert-xlsx-to-csv/xml-export.png"
target="_blank"
>
<img
clase="img-responsive"
src="/img/faq/excel/csharp-convert-xlsx-to-csv/xml-export.png"
alt="Exportación XML que muestra una estructura jerárquica con elementos y atributos correctamente formateados que representan datos de Excel" />
</a>
<div class="image-description">
<span class="image-description-text_strong">Figura 2</span> <span class="image-description-text_regular">-</span> <span class="image-description-text_italic">Exportación XML</span>
</div>
</div>
</div>
<div class="content-img-align-center">
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-convert-xlsx-to-csv/json-export.png"
target="_blank"
>
<img
clase="img-responsive"
src="/img/faq/excel/csharp-convert-xlsx-to-csv/json-export.png"
alt="Exportación JSON que muestra datos estructurados en formato de notación de objetos JavaScript con anidamiento y tipos de datos adecuados" />
</a>
<div class="image-description">
<span class="image-description-text_strong">Figura 3</span> <span class="image-description-text_regular">-</span> <span class="image-description-text_italic">Exportación JSON</span>
</div>
</div>
</div>
<div class="content-img-align-center">
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-convert-xlsx-to-csv/xls-export.png"
target="_blank"
>
<img
clase="img-responsive"
src="/img/faq/excel/csharp-convert-xlsx-to-csv/xls-export.png"
alt="Exportación XLS abierta en Microsoft Excel que muestra la compatibilidad con el formato Excel anterior conservando el formato" />
</a>
<div class="image-description">
<span class="image-description-text_strong">Figura 4</span> <span class="image-description-text_regular">-</span> <span class="image-description-text_italic">Exportación XLS</span>
</div>
</div>
</div>
<div class="content-img-align-center">
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-convert-xlsx-to-csv/excel-input-for-all-exports.png"
target="_blank"
>
<img
clase="img-responsive"
src="/img/faq/excel/csharp-convert-xlsx-to-csv/excel-input-for-all-exports.png"
alt="Archivo original Excel XLSX que muestra los datos de origen con varias columnas y formato antes de la conversión a varios formatos" />
</a>
<div class="image-description">
<span class="image-description-text_strong">Figura 5</span> <span class="image-description-text_regular">-</span> <span class="image-description-text_italic">Entrada de Excel para todas las exportaciones</span>
</div>
</div>
</div>
Cada formato de conversión sirve para diferentes propósitos en las aplicaciones modernas. Los archivos CSV funcionan bien para [importar datos a bases de datos](https://ironsoftware.com/csharp/excel/examples/load-excel-from-sql-database/) o herramientas de análisis de datos. El formato JSON es adecuado para API web y aplicaciones JavaScript. XML mantiene la estructura de los datos y se utiliza habitualmente en sistemas empresariales. El formato XLS heredado garantiza la compatibilidad con versiones anteriores de Excel y sistemas que requieran compatibilidad con versiones anteriores.
Al trabajar con estas conversiones, `IronXL` maneja muchas complejidades automáticamente:
- **Codificación de caracteres**: Codificación UTF-8 adecuada para caracteres internacionales
- **Conservación de tipos de datos**: Mantiene el formato numérico, de fecha y de texto
- **Evaluación de fórmulas**: [Calcula los resultados de las fórmulas](https://ironsoftware.com/csharp/excel/how-to/edit-formulas/) antes de exportarlas
- **Large File Handling**: uso eficiente de la memoria para grandes hojas de cálculo
- **Manejo de errores**: Gestión de archivos corruptos o protegidos
Para aplicaciones que requieren alto rendimiento o que lidian con [límites de tamaño de archivo](https://ironsoftware.com/csharp/excel/troubleshooting/file-size-limits/), `IronXL` ofrece opciones de optimización. Puede integrar estas conversiones en flujos de trabajo automatizados, servicios web o aplicaciones de escritorio.
<hr class="separator" />
<p class="main-content__segment-title">Acceso rápido a la biblioteca</p>
<div class="tutorial-section">
<div class="row">
<div class="col-sm-8">
<h3>Documentación de referencia de la API de IronXL</h3>
<p>Obtenga más información y comparta cómo fusionar, desfusionar y trabajar con celdas en hojas de cálculo Excel usando la Documentación de Referencia de la API de <code>IronXL</code>.</p>
<a class="doc-link" href="/csharp/excel/object-reference/api/" target="_blank"> Documentación de referencia de la API de IronXL <i class="fa fa-chevron-right"></i></a>
</div>
<div class="col-sm-4">
<div class="tutorial-image">
<img style="max-width: 110px; width: 100px; height: 140px;" alt="" class="img-responsive add-shadow" src="/img/svgs/documentation.svg" width="100" height="140" />
</div>
</div>
</div>
</div>
IronXL convierte archivos de Excel a múltiples formatos, incluyendo JSON, CSV, XML y formatos antiguos de Excel como XLS, utilizando comandos sencillos de una línea que eliminan el análisis manual.
IronXL convierte cualquier archivo de Excel en varios formatos, proporcionando a los desarrolladores herramientas para trabajar con Excel en C# sin Interop. Ya sea migrando datos entre sistemas, creando exportaciones de datos para aplicaciones web o integrándose con sistemas heredados, IronXL simplifica el proceso de conversión.
Estos formatos incluyen: JSON para las API web modernas, CSV para el intercambio de datos, XML para el almacenamiento de datos estructurados y formatos antiguos de Excel como XLS para la compatibilidad con versiones anteriores. Cada formato sirve para casos de uso específicos: CSV funciona bien para las importaciones de bases de datos, JSON se integra con las API REST y XML mantiene las relaciones jerárquicas de datos.
Este artículo demuestra cómo usar IronXL para convertir a XML, CSV, JSON y exportar hojas de cálculo de Excel como conjuntos de datos para integración directa con controles de datos .NET.
Inicio rápido: Convertir un archivo XLSX a CSV en una línea
Este ejemplo muestra cómo IronXL convierte un libro de Excel existente en un archivo CSV en una línea. Cargue su libro y guárdelo directamente como CSV para comenzar de inmediato.
Cargar una hoja de cálculo XLSX de Excel existente
Acceder o modificar el libro de trabajo
Exportar a archivo CSV u otros formatos, incluyendo JSON, TSV y XML
Revisar los archivos de salida y aplicar un procesamiento adicional
Paso 1
¿Cómo instalo la biblioteca IronXL?
Primero, instale IronXL antes de usarlo en sus aplicaciones. IronXL supports .NET MAUI, Blazor, and traditional .NET applications. Utilice cualquiera de estos métodos de instalación:
Haz clic derecho en el nombre de la Solución en el Explorador de Soluciones
Haz clic en Administrar paquetes de NuGet
Busque en IronXL.Excel
Instalar
PM > Install-Package IronXL.Excel
Install-Package IronXL.Excel
Tutorial de cómo hacerlo
¿Cómo puedo convertir archivos de Excel a diferentes formatos?
IronXL proporciona capacidades de conversión que manejan automáticamente el análisis y formato complejos.
Agrega el siguiente código:
using IronXL;// Load an existing Excel workbookWorkBook workbook = WorkBook.Load("Normal_Excel_File.xlsx");// Set metadata title for the workbookworkbook.Metadata.Title = "Normal_Excel_File.xlsx";// Save the workbook in different formatsworkbook.SaveAs("XLS_Export.xls");workbook.SaveAs("XLSX_Export.xlsx");workbook.SaveAsCsv("CSV_Export.csv");workbook.SaveAsJson("JSON_Export.json");workbook.SaveAsXml("XML_Export.xml");// Convert the workbook to a DataSet, allowing integration with other data tools like DataGridViewSystem.Data.DataSet dataSet = workbook.ToDataSet();
using IronXL;
// Load an existing Excel workbook
WorkBook workbook = WorkBook.Load("Normal_Excel_File.xlsx");
// Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx";
// Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls");
workbook.SaveAs("XLSX_Export.xlsx");
workbook.SaveAsCsv("CSV_Export.csv");
workbook.SaveAsJson("JSON_Export.json");
workbook.SaveAsXml("XML_Export.xml");
// Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
System.Data.DataSet dataSet = workbook.ToDataSet();
ImportsIronXL' Load an existing Excel workbookDim workbook AsWorkBook = WorkBook.Load("Normal_Excel_File.xlsx")' Set metadata title for the workbookworkbook.Metadata.Title = "Normal_Excel_File.xlsx"' Save the workbook in different formatsworkbook.SaveAs("XLS_Export.xls")workbook.SaveAs("XLSX_Export.xlsx")workbook.SaveAsCsv("CSV_Export.csv")workbook.SaveAsJson("JSON_Export.json")workbook.SaveAsXml("XML_Export.xml")' Convert the workbook to a DataSet, allowing integration with other data tools like DataGridViewDim dataSet AsSystem.Data.DataSet = workbook.ToDataSet()
Imports IronXL
' Load an existing Excel workbook
Dim workbook As WorkBook = WorkBook.Load("Normal_Excel_File.xlsx")
' Set metadata title for the workbook
workbook.Metadata.Title = "Normal_Excel_File.xlsx"
' Save the workbook in different formats
workbook.SaveAs("XLS_Export.xls")
workbook.SaveAs("XLSX_Export.xlsx")
workbook.SaveAsCsv("CSV_Export.csv")
workbook.SaveAsJson("JSON_Export.json")
workbook.SaveAsXml("XML_Export.xml")
' Convert the workbook to a DataSet, allowing integration with other data tools like DataGridView
Dim dataSet As System.Data.DataSet = workbook.ToDataSet()
El código anterior carga un archivo XLSX, añade un título y, a continuación, lo convierte a varios formatos. Al convertir a CSV, IronXL maneja caracteres especiales, celdas de varias líneas y el escape adecuado. Para las exportaciones JSON, crea una representación estructurada de objetos de tus datos de hoja de cálculo. La conversión a XML preserva el formato de las celdas y los tipos de datos. Finalmente, exporta Worksheet como DataSet para usar con objetos DataGridView, lo cual funciona bien cuando trabaja con DataTables.
He aquí otro ejemplo que muestra cómo convertir hojas de cálculo específicas con opciones personalizadas:
using IronXL;// Load workbook and select specific worksheetWorkBook workbook = WorkBook.Load("MultiSheet.xlsx");WorkSheet sheet = workbook.WorkSheets["SalesData"];// Convert just one worksheet to CSV with custom delimitersheet.SaveAsCsv("SalesData.csv", delimiter: ";");// Export to JSONsheet.SaveAsJson("SalesData.json");// Convert to XMLsheet.SaveAsXml("SalesData.xml");
using IronXL;
// Load workbook and select specific worksheet
WorkBook workbook = WorkBook.Load("MultiSheet.xlsx");
WorkSheet sheet = workbook.WorkSheets["SalesData"];
// Convert just one worksheet to CSV with custom delimiter
sheet.SaveAsCsv("SalesData.csv", delimiter: ";");
// Export to JSON
sheet.SaveAsJson("SalesData.json");
// Convert to XML
sheet.SaveAsXml("SalesData.xml");
using IronXL;using System.Threading.Tasks;// Async conversion for large filespublic async TaskConvertLargeFileAsync(string inputPath){ WorkBook workbook = WorkBook.Load(inputPath); // Parallel export to multiple formats var tasks = new[] {Task.Run(() => workbook.SaveAsCsv("output.csv")),Task.Run(() => workbook.SaveAsJson("output.json")),Task.Run(() => workbook.SaveAsXml("output.xml")) }; awaitTask.WhenAll(tasks);}
using IronXL;
using System.Threading.Tasks;
// Async conversion for large files
public async Task ConvertLargeFileAsync(string inputPath)
{
WorkBook workbook = WorkBook.Load(inputPath);
// Parallel export to multiple formats
var tasks = new[]
{
Task.Run(() => workbook.SaveAsCsv("output.csv")),
Task.Run(() => workbook.SaveAsJson("output.json")),
Task.Run(() => workbook.SaveAsXml("output.xml"))
};
await Task.WhenAll(tasks);
}
ImportsIronXLImportsSystem.Threading.Tasks' Async conversion for large filesPublicAsync Function ConvertLargeFileAsync(inputPath AsString) AsTask Dim workbook AsWorkBook = WorkBook.Load(inputPath) ' Parallel export to multiple formats Dim tasks = New Task() {Task.Run(Sub() workbook.SaveAsCsv("output.csv")),Task.Run(Sub() workbook.SaveAsJson("output.json")),Task.Run(Sub() workbook.SaveAsXml("output.xml")) }AwaitTask.WhenAll(tasks)End Function
Imports IronXL
Imports System.Threading.Tasks
' Async conversion for large files
Public Async Function ConvertLargeFileAsync(inputPath As String) As Task
Dim workbook As WorkBook = WorkBook.Load(inputPath)
' Parallel export to multiple formats
Dim tasks = New Task() {
Task.Run(Sub() workbook.SaveAsCsv("output.csv")),
Task.Run(Sub() workbook.SaveAsJson("output.json")),
Task.Run(Sub() workbook.SaveAsXml("output.xml"))
}
Await Task.WhenAll(tasks)
End Function
A continuación se muestran los distintos archivos exportados.
Figura 1-Exportación de archivo CSV
Figura 2-Exportación XML
Figura 3-Exportación JSON
Figura 4-Exportación XLS
Figura 5-Entrada de Excel para todas las exportaciones
Cada formato de conversión sirve para diferentes propósitos en las aplicaciones modernas. Los archivos CSV funcionan bien para importar datos a bases de datos o herramientas de análisis de datos. El formato JSON es adecuado para API web y aplicaciones JavaScript. XML mantiene la estructura de los datos y se utiliza habitualmente en sistemas empresariales. El formato XLS heredado garantiza la compatibilidad con versiones anteriores de Excel y sistemas que requieran compatibilidad con versiones anteriores.
Al trabajar con estas conversiones, IronXL maneja muchas complejidades automáticamente:
Codificación de caracteres: Codificación UTF-8 adecuada para caracteres internacionales
Conservación de tipos de datos: Mantiene el formato numérico, de fecha y de texto
Large File Handling: uso eficiente de la memoria para grandes hojas de cálculo
Manejo de errores: Gestión de archivos corruptos o protegidos
Para aplicaciones que requieren alto rendimiento o que lidian con límites de tamaño de archivo, IronXL ofrece opciones de optimización. Puede integrar estas conversiones en flujos de trabajo automatizados, servicios web o aplicaciones de escritorio.
Acceso rápido a la biblioteca
Documentación de referencia de la API de IronXL
Obtenga más información y comparta cómo fusionar, desfusionar y trabajar con celdas en hojas de cálculo Excel usando la Documentación de Referencia de la API de IronXL.
¿Cómo convierto XLSX a CSV en C# sin tener Excel instalado?
IronXL le permite convertir XLSX a CSV con una sola línea de código: IronXL.WorkBook.Load("input.xlsx").SaveAsCsv("output.csv"). Esto funciona sin necesidad de tener Microsoft Excel o Interop instalado en su sistema.
¿A qué formatos de archivo puedo convertir archivos Excel con C#?
IronXL admite la conversión de archivos de Excel a múltiples formatos, incluidos CSV, JSON, XML, TSV y formatos de Excel más antiguos como XLS. Cada formato es ideal para diferentes casos de uso: CSV para importaciones de bases de datos, JSON para API REST y XML para mantener estructuras de datos jerárquicas.
¿Cómo se instala la biblioteca de conversión de Excel para C#?
Instale IronXL utilizando el gestor de paquetes NuGet buscando 'IronXL.Excel' o a través de la consola del gestor de paquetes con el comando 'Install-Package IronXL'. La biblioteca es compatible con .NET MAUI, Blazor y las aplicaciones .NET tradicionales.
¿Puedo convertir Excel a JSON para utilizarlo con API web?
Sí, IronXL proporciona conversión incorporada de Excel a formato JSON, lo que facilita la integración de datos de Excel con modernas API web y servicios REST. La conversión maneja estructuras de datos complejas de forma automática.
¿La conversión a Excel maneja caracteres especiales y formatos?
IronXL maneja automáticamente caracteres especiales, celdas multilínea y escapes adecuados al convertir archivos de Excel a formatos como CSV. Esto elimina la necesidad de parseo manual o correcciones de formato.
How does IronXL handle formula evaluation in Excel files?
IronXL can evaluate formulas in Excel files before export, ensuring that the final output includes computed values rather than the formula text.
What are the advantages of using JSON format with IronXL?
The JSON format is advantageous for its integration with web APIs and JavaScript applications. IronXL enables conversion of Excel data to JSON, preserving the structured data representation.
How does IronXL ensure compatibility with older Excel versions?
IronXL can export Excel files to the legacy XLS format, maintaining backward compatibility for applications and systems that require older Excel file support.
Can IronXL be used for automated workflows involving Excel file conversions?
Yes, IronXL supports integration into automated workflows and web services, providing efficient and comprehensive conversion solutions for diverse applications.
Does IronXL support large file handling during Excel conversions?
IronXL is optimized for large files, using efficient memory management to process big spreadsheets during conversions while maintaining performance.
Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.