# Cómo escribir CSV en C# .NET usando IronXL
IronXL proporciona una forma sencilla de escribir datos en archivos CSV en .NET cargando libros de Excel y guardándolos en formato CSV mediante una línea de código, eliminando el análisis sintáctico manual.
*as-heading:2(Inicio rápido: Guarde un libro de Excel como CSV con IronXL)*
Este ejemplo muestra cómo convertir un archivo Excel existente a CSV utilizando IronXL. Carga el libro de trabajo y llama a `SaveAsCsv` - no se necesita análisis manual.
```cs
:title=Convert to CSV in One Simple Step
IronXL.WorkBook.Load("MyExcel.xlsx").SaveAsCsv("MyExcel.csv");
```
<div class="learnn-how-section">
<div class="row">
<div class="col-sm-6">
<h2>Cómo escribir CSV en .NET</h2>
<ul class="list-unstyled">
<li>Añadir la biblioteca IronXL</li>
<li>Crear un libro de trabajo en C#</li>
<li>Guardar libro de Excel en formato de archivo CSV</li>
</ul>
</div>
<div class="col-sm-6">
<div class="download-card">
<img style="box-shadow: none; width: 308px; height: 320px;" src="/img/faq/excel/how-to-work.svg" class="img-responsive learn-how-to-img replaceable-img" />
</div>
</div>
</div>
</div>
<hr class="separator" />
<h4 class="tutorial-segment-title">Paso 1</h4>
## ¿Cómo agrego IronXL a mi proyecto?
### ¿Qué método de instalación debo utilizar?
Si aún no ha instalado IronXL, siga estos pasos:
* Abre Visual Studio y selecciona el menú Proyecto.
* Haz clic en Administrar paquetes NuGet.
* Busca `IronXL.Excel`.
* Haz clic en Instalar.
### ¿Y si prefiero la línea de comandos?
Utilice el siguiente comando en el símbolo del sistema para desarrolladores:
```shell
:ProductInstall
```
### ¿Dónde puedo encontrar más recursos?
Para obtener tutoriales y orientación adicionales, visite: [https://ironsoftware.com/csharp/excel/docs/](https://ironsoftware.com/csharp/excel/docs/). Para las operaciones de lectura de CSV, consulte nuestra guía sobre [cómo leer archivos CSV en C#](https://ironsoftware.com/csharp/excel/how-to/csharp-read-csv-file/). Descargue el proyecto de muestra [aquí](https://ironsoftware.com/csharp/excel/downloads/csharp-write-to-csv.zip).
<hr class="separator" />
<h4 class="tutorial-segment-title">Tutorial de cómo hacerlo</h4>
## ¿Cómo crear un libro de Excel para exportar a CSV?
### ¿Qué datos debe contener mi libro de trabajo?
Los archivos CSV (Comma-Separated Values) se utilizan ampliamente para el intercambio de datos entre aplicaciones debido a su formato sencillo y su compatibilidad universal. Ya sea exportando datos para su análisis, creando informes o integrándolos con otros sistemas, IronXL facilita el proceso.
En primer lugar, crea un libro de Excel que contenga datos de ejemplo. Si necesita ayuda para crear archivos de Excel mediante programación, visite nuestro [tutorial sobre la creación de archivos de Excel en .NET](https://ironsoftware.com/csharp/excel/tutorials/create-excel-file-net/):
<center>
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-write-to-csv-file/normal-excel-data-to-be-exported-to-csv.png"
target="_blank"
>
<img
class="img-responsive"
src="/img/faq/excel/csharp-write-to-csv-file/normal-excel-data-to-be-exported-to-csv.png"
alt="Hoja de cálculo Excel que muestra datos de muestra con encabezados y filas listos para exportar a CSV" />
</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">Datos normales de Excel que se exportarán a CSV</span>
</div>
</div>
</center>
### ¿Qué espacio de nombres necesito importar?
Añade el espacio de nombres `IronXL` para escribir archivos CSV en C#:
```csharp
using IronXL;
```
<hr class="separator" />
## ¿Cómo guardo mi libro de trabajo como CSV?
### ¿Qué código necesito para convertir Excel a CSV?
El siguiente código en C# demuestra cómo usar el método `Load` del objeto `WorkBook` para cargar un archivo de Excel, luego usando el método `SaveAs` para guardarlo como CSV. Este enfoque maneja tipos de datos, caracteres especiales y formato automáticamente:
```csharp
using IronXL;
// Load the existing Excel workbook
WorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx"); // Import .xls, .csv, or .tsv file
// Save the workbook as a CSV file with the worksheet name appended
wb.SaveAs("Excel_To_CSV.csv"); // Exported as: Excel_To_CSV.Sheet1.csv
```
### ¿Cómo puedo guardar una hoja de cálculo específica en CSV?
Cuando se trabaja con libros de varias hojas, se pueden exportar hojas específicas. IronXL ofrece opciones flexibles para este escenario. Más información sobre [gestión de hojas de cálculo](https://ironsoftware.com/csharp/excel/how-to/manage-worksheet/) en nuestra documentación:
```csharp
using IronXL;
// Load workbook and access specific worksheet
WorkBook workBook = WorkBook.Load("MultiSheet_Excel.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Sales_Data");
// Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv");
// Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter: "\t");
```
### ¿Qué aspecto tiene el archivo CSV de salida?
El archivo CSV de salida tiene el siguiente aspecto cuando se abre en un editor de texto. Observa cómo IronXL formatea correctamente los datos con comas como delimitadores y maneja los campos de texto que contienen caracteres especiales:
<center>
<div class="center-image-wrapper">
<a
href="/img/faq/excel/csharp-write-to-csv-file/output-csv-file.png"
target="_blank"
>
<img
class="img-responsive"
src="/img/faq/excel/csharp-write-to-csv-file/output-csv-file.png"
alt="Vista del editor de texto de un archivo CSV que muestra datos separados por comas con el formato y la estructura adecuados" />
</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">Archivo CSV de salida</span>
</div>
</div>
</center>
### ¿Cómo manejar varias hojas de cálculo?
Cuando su archivo de Excel contiene varias hojas de cálculo, IronXL ofrece varios enfoques para la exportación de CSV. Más información sobre [conversión de tipos de archivo de hoja de cálculo](https://ironsoftware.com/csharp/excel/how-to/convert-spreadsheet-file-types/) en nuestra guía completa:
```csharp
using IronXL;
using System;
// Load workbook with multiple sheets
WorkBook workBook = WorkBook.Load("MultipleSheets.xlsx");
// Method 1: Export all sheets to separate CSV files
foreach (WorkSheet sheet in workBook.WorkSheets)
{
string fileName = $"{sheet.Name}_Export.csv";
sheet.SaveAsCsv(fileName);
Console.WriteLine($"Exported {sheet.Name} to {fileName}");
}
// Method 2: Combine all sheets into one CSV
var combinedData = workBook.WorkSheets[0];
for (int i = 1; i < workBook.WorkSheets.Count; i++)
{
var currentSheet = workBook.WorkSheets[i];
// Add logic to append data from currentSheet to combinedData
}
combinedData.SaveAsCsv("Combined_Output.csv");
```
### ¿Qué hay de las consideraciones de rendimiento?
Para archivos de Excel de gran tamaño, IronXL ofrece funciones de transmisión eficientes que minimizan el uso de memoria. Cuando trabaje con conjuntos de datos considerables, utilice los métodos optimizados de IronXL. Consulte nuestra guía sobre [exportación de datos a varios formatos](https://ironsoftware.com/csharp/excel/how-to/c-sharp-export-to-excel/) para escenarios avanzados.
### ¿Puedo trabajar con DataTables?
IronXL se integra a la perfección con la estructura DataTable de .NET, lo que facilita la exportación de datos desde bases de datos o colecciones en memoria. Consulte nuestro tutorial sobre [convertir DataTable a CSV](https://ironsoftware.com/csharp/excel/how-to/csharp-datatable-to-csv/):
```csharp
using IronXL;
using System.Data;
// Create a DataTable with sample data (the table name becomes the worksheet name)
DataTable dataTable = new DataTable("Products");
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("Price", typeof(decimal));
// Add sample rows
dataTable.Rows.Add(1, "Product A", 29.99m);
dataTable.Rows.Add(2, "Product B", 49.99m);
// Wrap the DataTable in a DataSet — each table is loaded as its own worksheet
DataSet dataSet = new DataSet();
dataSet.Tables.Add(dataTable);
// Load the DataSet into a new workbook
WorkBook workBook = WorkBook.Create();
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);
// Save as CSV
workBook.SaveAsCsv("Products.csv");
```
### ¿Cómo configuro las licencias?
Antes de implementar su solución de exportación de CSV, configure su licencia de IronXL correctamente. Visite nuestra guía sobre [utilización de claves de licencia](https://ironsoftware.com/csharp/excel/get-started/license-keys/) para obtener información sobre la aplicación de licencias en distintos entornos.
<hr class="separator" />
<h4 class="tutorial-segment-title">Acceso rápido a la biblioteca</h4>
<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, desunir y trabajar con celdas en hojas de cálculo Excel usando la Documentación de Referencia de la API de IronXL. Para firmas de métodos detalladas y opciones adicionales de exportación a CSV, consulte nuestra <a href="https://ironsoftware.com/csharp/excel/object-reference/api/" target="_blank">Referencia de API</a>.</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>
Also refer to our [API Reference](https://ironsoftware.com/csharp/excel/object-reference/api/) for full details.
</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 proporciona una forma sencilla de escribir datos en archivos CSV en .NET cargando libros de Excel y guardándolos en formato CSV mediante una línea de código, eliminando el análisis sintáctico manual.
Inicio rápido: Guarde un libro de Excel como CSV con IronXL
Este ejemplo muestra cómo convertir un archivo Excel existente a CSV utilizando IronXL. Carga el libro de trabajo y llama a SaveAsCsv - no se necesita análisis manual.
¿Cómo crear un libro de Excel para exportar a CSV?
¿Qué datos debe contener mi libro de trabajo?
Los archivos CSV (Comma-Separated Values) se utilizan ampliamente para el intercambio de datos entre aplicaciones debido a su formato sencillo y su compatibilidad universal. Ya sea exportando datos para su análisis, creando informes o integrándolos con otros sistemas, IronXL facilita el proceso.
Figura 1-Datos normales de Excel que se exportarán a CSV
¿Qué espacio de nombres necesito importar?
Añade el espacio de nombres IronXL para escribir archivos CSV en C#:
using IronXL;
using IronXL;
ImportsIronXL
Imports IronXL
¿Cómo guardo mi libro de trabajo como CSV?
¿Qué código necesito para convertir Excel a CSV?
El siguiente código en C# demuestra cómo usar el método Load del objeto WorkBook para cargar un archivo de Excel, luego usando el método SaveAs para guardarlo como CSV. Este enfoque maneja tipos de datos, caracteres especiales y formato automáticamente:
using IronXL;// Load the existing Excel workbookWorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx"); // Import .xls, .csv, or .tsv file// Save the workbook as a CSV file with the worksheet name appendedwb.SaveAs("Excel_To_CSV.csv"); // Exported as: Excel_To_CSV.Sheet1.csv
using IronXL;
// Load the existing Excel workbook
WorkBook wb = WorkBook.Load("Normal_Excel_File.xlsx"); // Import .xls, .csv, or .tsv file
// Save the workbook as a CSV file with the worksheet name appended
wb.SaveAs("Excel_To_CSV.csv"); // Exported as: Excel_To_CSV.Sheet1.csv
ImportsIronXL' Load the existing Excel workbookDim wb AsWorkBook = WorkBook.Load("Normal_Excel_File.xlsx") ' Import .xls, .csv, or .tsv file' Save the workbook as a CSV file with the worksheet name appendedwb.SaveAs("Excel_To_CSV.csv") ' Exported as: Excel_To_CSV.Sheet1.csv
Imports IronXL
' Load the existing Excel workbook
Dim wb As WorkBook = WorkBook.Load("Normal_Excel_File.xlsx") ' Import .xls, .csv, or .tsv file
' Save the workbook as a CSV file with the worksheet name appended
wb.SaveAs("Excel_To_CSV.csv") ' Exported as: Excel_To_CSV.Sheet1.csv
¿Cómo puedo guardar una hoja de cálculo específica en CSV?
Cuando se trabaja con libros de varias hojas, se pueden exportar hojas específicas. IronXL ofrece opciones flexibles para este escenario. Más información sobre gestión de hojas de cálculo en nuestra documentación:
using IronXL;// Load workbook and access specific worksheetWorkBook workBook = WorkBook.Load("MultiSheet_Excel.xlsx");WorkSheet sheet = workBook.GetWorkSheet("Sales_Data");// Save only the specific worksheet as CSVsheet.SaveAsCsv("Sales_Data_Export.csv");// Alternatively, save with custom delimitersheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter: "\t");
using IronXL;
// Load workbook and access specific worksheet
WorkBook workBook = WorkBook.Load("MultiSheet_Excel.xlsx");
WorkSheet sheet = workBook.GetWorkSheet("Sales_Data");
// Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv");
// Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter: "\t");
ImportsIronXL' Load workbook and access specific worksheetDim workBook AsWorkBook = WorkBook.Load("MultiSheet_Excel.xlsx")Dim sheet AsWorkSheet = workBook.GetWorkSheet("Sales_Data")' Save only the specific worksheet as CSVsheet.SaveAsCsv("Sales_Data_Export.csv")' Alternatively, save with custom delimitersheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter:=vbTab)
Imports IronXL
' Load workbook and access specific worksheet
Dim workBook As WorkBook = WorkBook.Load("MultiSheet_Excel.xlsx")
Dim sheet As WorkSheet = workBook.GetWorkSheet("Sales_Data")
' Save only the specific worksheet as CSV
sheet.SaveAsCsv("Sales_Data_Export.csv")
' Alternatively, save with custom delimiter
sheet.SaveAsCsv("Sales_Data_Tab.tsv", delimiter:=vbTab)
¿Qué aspecto tiene el archivo CSV de salida?
El archivo CSV de salida tiene el siguiente aspecto cuando se abre en un editor de texto. Observa cómo IronXL formatea correctamente los datos con comas como delimitadores y maneja los campos de texto que contienen caracteres especiales:
Figura 2-Archivo CSV de salida
¿Cómo manejar varias hojas de cálculo?
Cuando su archivo de Excel contiene varias hojas de cálculo, IronXL ofrece varios enfoques para la exportación de CSV. Más información sobre conversión de tipos de archivo de hoja de cálculo en nuestra guía completa:
using IronXL;using System;// Load workbook with multiple sheetsWorkBook workBook = WorkBook.Load("MultipleSheets.xlsx");// Method 1: Export all sheets to separate CSV filesforeach (WorkSheet sheet in workBook.WorkSheets){ string fileName = $"{sheet.Name}_Export.csv"; sheet.SaveAsCsv(fileName);Console.WriteLine($"Exported {sheet.Name} to {fileName}");}// Method 2: Combine all sheets into one CSVvar combinedData = workBook.WorkSheets[0];for (int i = 1; i < workBook.WorkSheets.Count; i++){ var currentSheet = workBook.WorkSheets[i]; // Add logic to append data from currentSheet to combinedData}combinedData.SaveAsCsv("Combined_Output.csv");
using IronXL;
using System;
// Load workbook with multiple sheets
WorkBook workBook = WorkBook.Load("MultipleSheets.xlsx");
// Method 1: Export all sheets to separate CSV files
foreach (WorkSheet sheet in workBook.WorkSheets)
{
string fileName = $"{sheet.Name}_Export.csv";
sheet.SaveAsCsv(fileName);
Console.WriteLine($"Exported {sheet.Name} to {fileName}");
}
// Method 2: Combine all sheets into one CSV
var combinedData = workBook.WorkSheets[0];
for (int i = 1; i < workBook.WorkSheets.Count; i++)
{
var currentSheet = workBook.WorkSheets[i];
// Add logic to append data from currentSheet to combinedData
}
combinedData.SaveAsCsv("Combined_Output.csv");
C#
¿Qué hay de las consideraciones de rendimiento?
Para archivos de Excel de gran tamaño, IronXL ofrece funciones de transmisión eficientes que minimizan el uso de memoria. Cuando trabaje con conjuntos de datos considerables, utilice los métodos optimizados de IronXL. Consulte nuestra guía sobre exportación de datos a varios formatos para escenarios avanzados.
¿Puedo trabajar con DataTables?
IronXL se integra a la perfección con la estructura DataTable de .NET, lo que facilita la exportación de datos desde bases de datos o colecciones en memoria. Consulte nuestro tutorial sobre convertir DataTable a CSV:
using IronXL;using System.Data;// Create a DataTable with sample data (the table name becomes the worksheet name)DataTable dataTable = new DataTable("Products");dataTable.Columns.Add("ID", typeof(int));dataTable.Columns.Add("Name", typeof(string));dataTable.Columns.Add("Price", typeof(decimal));// Add sample rowsdataTable.Rows.Add(1, "Product A", 29.99m);dataTable.Rows.Add(2, "Product B", 49.99m);// Wrap the DataTable in a DataSet — each table is loaded as its own worksheetDataSet dataSet = new DataSet();dataSet.Tables.Add(dataTable);// Load the DataSet into a new workbookWorkBook workBook = WorkBook.Create();WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);// Save as CSVworkBook.SaveAsCsv("Products.csv");
using IronXL;
using System.Data;
// Create a DataTable with sample data (the table name becomes the worksheet name)
DataTable dataTable = new DataTable("Products");
dataTable.Columns.Add("ID", typeof(int));
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("Price", typeof(decimal));
// Add sample rows
dataTable.Rows.Add(1, "Product A", 29.99m);
dataTable.Rows.Add(2, "Product B", 49.99m);
// Wrap the DataTable in a DataSet — each table is loaded as its own worksheet
DataSet dataSet = new DataSet();
dataSet.Tables.Add(dataTable);
// Load the DataSet into a new workbook
WorkBook workBook = WorkBook.Create();
WorkBook.LoadWorkSheetsFromDataSet(dataSet, workBook);
// Save as CSV
workBook.SaveAsCsv("Products.csv");
C#
¿Cómo configuro las licencias?
Antes de implementar su solución de exportación de CSV, configure su licencia de IronXL correctamente. Visite nuestra guía sobre utilización de claves de licencia para obtener información sobre la aplicación de licencias en distintos entornos.
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, desunir y trabajar con celdas en hojas de cálculo Excel usando la Documentación de Referencia de la API de IronXL. Para firmas de métodos detalladas y opciones adicionales de exportación a CSV, consulte nuestra Referencia de API.
¿Cómo escribo archivos CSV en C# sin analizarlos manualmente?
IronXL proporciona una solución simple de una línea para escribir archivos CSV en C# cargando libros de Excel y guardándolos como formato CSV utilizando el método SaveAsCsv, eliminando la necesidad de análisis manual o manipulación de cadenas complejas.
¿Cuál es la forma más rápida de convertir Excel a CSV en .NET?
Con IronXL, puede convertir un archivo de Excel a CSV en sólo una línea de código: IronXL.WorkBook.Load("MiExcel.xlsx").SaveAsCsv("MiExcel.csv"). Esto maneja todos los tipos de datos, caracteres especiales y formato automáticamente.
¿Cómo instalo la biblioteca para la escritura de archivos CSV en C#?
Puede instalar IronXL a través del gestor de paquetes NuGet de Visual Studio buscando 'IronXL.Excel' o utilizar el símbolo del sistema del desarrollador con el comando de instalación adecuado.
¿Qué espacio de nombres debo importar para las operaciones CSV?
Para escribir archivos CSV utilizando IronXL, es necesario importar el espacio de nombres IronXL añadiendo 'using IronXL;' en la parte superior de su archivo C#.
¿Puedo guardar una hoja de cálculo específica en formato CSV?
Sí, IronXL le permite guardar hojas de trabajo individuales de un libro de Excel en formato CSV, lo que le da flexibilidad para exportar sólo los datos que necesita en lugar de todo el libro de trabajo.
¿Qué formatos de datos son compatibles con la conversión a CSV?
IronXL maneja automáticamente varios tipos de datos, incluyendo texto, números, fechas y caracteres especiales al convertir libros de Excel a formato CSV, garantizando la integridad de los datos durante todo el proceso de conversión.
Can IronXL integrate with .NET's DataTable for CSV export?
Yes, IronXL integrates with .NET's DataTable, which allows you to export data from databases or in-memory collections easily to CSV format.
Is it necessary to configure a license for using IronXL?
Yes, before deploying your solution, you should properly configure your IronXL license by visiting the guide on using license keys provided by Iron Software.
What namespace is required to use IronXL for CSV writing?
You need to import the `IronXL` namespace in your C# project to write CSV files with IronXL.
Where can I find more resources and documentation for using IronXL?
Additional resources and detailed API documentation are available at Iron Software’s website, specifically at [IronXL API Reference](https://ironsoftware.com/csharp/excel/object-reference/api/).
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.