Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Este artículo explorará cómo escribir un archivo CSV utilizando IronXL.
IronXL es una biblioteca .NET Excel que ofrece una funcionalidad completa para crear, leer y editar archivos de hojas de cálculo en aplicaciones C#. Destaca por su rendimiento y precisión de salida. Es compatible con varios formatos de archivo de libros de cálculo, como XLS, XLSX, XLSM, CSV y TSV. Además, permiteguardar o exportar datos de archivos Excel a formatos como CSV, JSON, HTML, Binary, Byte Array, DataSet o DataTable.
Con IronXL, los desarrolladores pueden trabajar sin problemas con hojas de cálculo y rangos de celdas, proporcionando un enfoque elegante para manipular datos. Permiteedición sencilla de fórmulas y facilita el recálculo de fórmulas dentro de una hoja. Clasificación de datos en función del rango, la columna o la fila es sencillo. También puede modificar los diseñoscristales de congelación, tamaño automático de filas/columnasyañadir/eliminar filas/columnas.
IronXL ofrece la posibilidad de proteger los archivos de Excel con contraseñas de usuario y establecer permisos de edición. Además, ofrece funciones paraañadir, eliminar y extraer imágenes a partir de hojas de cálculo Excel. La biblioteca incluye una amplia gama de funciones de Excel, compatibles con diversos formatos de datos de celdas. Esto convierte a IronXL en una de las API más intuitivas para trabajar con archivos Excel.
Una ventaja notable de IronXL es que no requiere que Microsoft Excel o las dependencias de Office Interop estén instaladas en la máquina. Es una solución autónoma que funciona en múltiples plataformas y es compatible con las versiones 7, 6 y 5 de .NET. También es compatible con .NET Core 2 y 3, así como con la versión estándar 2. Para trabajar con hojas de cálculo Excel, IronXL es compatible con .NET Framework 4.5 y versiones posteriores.
Para empezar, se recomienda la última versión de Visual Studio para crear una aplicación. Visual Studio es el IDE oficial para el desarrollo en C#, y debe tenerlo instalado. Puede descargarlo enSitio web de Microsoft Visual Studiosi no está instalado.
Los siguientes pasos crearán un nuevo proyecto llamado "DemoApp".
Abra Visual Studio y haga clic en "Crear un nuevo proyecto".
Abrir Visual Studio
Seleccione Aplicación de consola y haga clic en "Siguiente".
Crea un nuevo proyecto en Visual Studio.
Establecer el nombre del proyecto
Configura tu nuevo proyecto
Seleccione la versión .NET. Elija la versión estable .NET 6.0.
Selección del .NET Framework
Una vez creado el proyecto, es necesario instalar la biblioteca IronXL en el proyecto para poder utilizarla. Sigue estos pasos para instalarlo.
Abra el Gestor de paquetes NuGet desde el Explorador de soluciones o desde las herramientas.
Navega al Gestor de paquetes NuGet
Busque la Biblioteca IronXL y seleccione el proyecto actual. Haz clic en instalar.
**Busca e instala el paquete IronXL en la interfaz de usuario del gestor de paquetes NuGet
Añade el siguiente namespace en la parte superior del archivo Program.cs
using IronXL;
using IronXL;
Imports IronXL
IronXL provee la facilidad de crear un libro de trabajo vacío. Un libro de trabajo es una hoja de cálculo que contiene varias hojas de trabajo. Los datos se almacenan en celdas. CSV también se parece a una hoja de cálculo, pero con una extensión de archivo CSV.
// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
// Creates a new Instance of WorkBook SpreadSheet
WorkBook workBook = new WorkBook();
' Creates a new Instance of WorkBook SpreadSheet
Dim workBook As New WorkBook()
Ahora, vamos a crear una hoja en la carpetaLibro de trabajo. Hay varias formas de crear una hoja de cálculo en el libro de trabajo.
// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;
// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
// Adds sheet1 to the workbook
WorkSheet sheet = workBook.DefaultWorkSheet;
// Creates a worksheet with name Sheet1
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
' Adds sheet1 to the workbook
Dim sheet As WorkSheet = workBook.DefaultWorkSheet
' Creates a worksheet with name Sheet1
Dim sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
Si desea añadir más hojas al libro de trabajo existente, utilice la funciónCrear hoja de trabajo método.
Nota: Puede utilizarWorkBook.LoadCSV
si el archivo CSV ya existe. Puede ver estopágina de ejemplo de código para cargar un archivo CSV existente.
WorkSheet
.Escribir archivos CSV es fácil usando IronXL. Proporciona funciones de Excel para escribir datos en CSV. Se pueden utilizar referencias de celda para añadir los valores en las ubicaciones especificadas. Aquí, voy a añadir unos cuantos registros de algunos empleados usando un bucle foreach
.
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";
foreach (var employee in employeenames)
{
sheet ["A" + i].Value = i;
sheet ["B" + i].Value = employee;
sheet ["C" + i].Value = i * 1000;
i++;
}
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";
foreach (var employee in employeenames)
{
sheet ["A" + i].Value = i;
sheet ["B" + i].Value = employee;
sheet ["C" + i].Value = i * 1000;
i++;
}
Dim employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Dim i As Integer = 2
sheet ("A1").Value = "ID"
sheet ("B1").Value = "Name"
sheet ("C1").Value = "Salary"
For Each employee In employeenames
sheet ("A" & i).Value = i
sheet ("B" & i).Value = employee
sheet ("C" & i).Value = i * 1000
i += 1
Next employee
En el ejemplo de código anterior, se crea una matriz de employeenames
y se establece la primera fila con encabezados: ID, Nombre, Salario. También se inicializa una variable i
con valor 2, que introducirá los registros de la 2ª fila por debajo de las cabeceras. El bucle foreach
toma un empleado de la lista y se añade a la fila con los valores de ID y salario. Antes de que finalice el bucle, el valor de i
debe incrementarse, de lo contrario cada registro se añadirá a la misma fila.
El último paso es guardar el archivo CSV. IronXL proporciona el métodoGuardar como CSV para guardar el libro de trabajo como un archivo CSV. El primer parámetro de este método es el nombre del archivo CSV y el segundo es el delimitador.
workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",");
workBook.SaveAsCsv("sample.csv", ",")
Va como sigue:
using System;
using IronXL;
WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";
foreach (var employee in employeenames)
{
sheet ["A" + i].Value = i;
sheet ["B" + i].Value = employee;
sheet ["C" + i].Value = i * 1000;
i++;
}
workBook.SaveAsCsv("sample.csv", ",");
using System;
using IronXL;
WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sheet1");
string [] employeenames = { "John", "Peter", "Harry", "Kevin", "Brian" };
int i = 2;
sheet ["A1"].Value = "ID";
sheet ["B1"].Value = "Name";
sheet ["C1"].Value = "Salary";
foreach (var employee in employeenames)
{
sheet ["A" + i].Value = i;
sheet ["B" + i].Value = employee;
sheet ["C" + i].Value = i * 1000;
i++;
}
workBook.SaveAsCsv("sample.csv", ",");
Imports System
Imports IronXL
Private workBook As WorkBook = WorkBook.Create()
Private sheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
Private employeenames() As String = { "John", "Peter", "Harry", "Kevin", "Brian" }
Private i As Integer = 2
Private sheet ("A1").Value = "ID"
Private sheet ("B1").Value = "Name"
Private sheet ("C1").Value = "Salary"
For Each employee In employeenames
sheet ("A" & i).Value = i
sheet ("B" & i).Value = employee
sheet ("C" & i).Value = i * 1000
i += 1
Next employee
workBook.SaveAsCsv("sample.csv", ",")
**El archivo CSV de salida
Este artículo presenta un enfoque simple para escribir un archivo CSV utilizando IronXL en C#. IronXL también ofrece la posibilidad de trabajar con archivos CSV existentes sin ningún problema. También permite escribir archivos CSV, crear nuevos archivos Excel y escribir datos en ellos con una sintaxis sencilla. IronXL también puede utilizarse para leer y escribir archivos Excel sin tener instalado Microsoft Office. Para la conversión entre diferentes formatos de hoja de cálculo, puede ver estopágina de ejemplo de código.
IronXL es gratuito para el desarrollo y puede adquirirse bajo licencia para uso comercial. También puedes probar IronXL gratisensayo para uso comercial.
9 productos API .NET para sus documentos de oficina