USO DE IRONXL

Cómo exportar a CSV en .NET Core

Actualizado 22 de noviembre, 2023
Compartir:

1.0 Introducción

Existen aplicaciones de hojas de cálculo para Windows, macOS, iOS, Android y iPadOS, como por ejemplo Microsoft Excel. El plan de estudios incluye lecciones sobre tablas dinámicas, herramientas gráficas, conceptos matemáticos y el lenguaje de programación de macros Visual Basic for Applications. (VBA). Uno de los programas del paquete de software Microsoft 365 es Excel. Las hojas de cálculo como Excel utilizan una cuadrícula de celdas dispuestas en filas numeradas y columnas con nombres de letras para organizar las manipulaciones de datos, incluidos los cálculos aritméticos. Proporciona capacidades integradas para satisfacer los requisitos de dominio en los ámbitos financiero, estadístico y tecnológico. Ofrece una presentación gráfica tridimensional restringida y también puede mostrar datos en forma de diagramas, gráficos lineales e histogramas. Los datos pueden dividirse en segmentos para demostrar cómo influyen en ellos distintas cosas desde distintos ángulos.

Una de las bibliotecas más conocidas, IronXL se utilizará en este artículo para contrastar y comparar las distintas formas en que las tecnologías .NET pueden interactuar mediante programación con los documentos de Microsoft Excel. También creará un entorno para leer, escribir y exportar hojas de cálculo Excel a archivos CSV.

2,0 IronXL

En IronXL para .NET, una biblioteca de C# Excel que puede utilizarse para leer y convertir documentos de Microsoft Excel en archivos CSV. IronXL es una librería de software .NET independiente que puede utilizarse sin necesidad de instalar Microsoft Office o Microsoft.Office.Interop.Excel. Puede leer diversos formatos de hojas de cálculo.

Las hojas de cálculo de Excel pueden leerse, editarse y generarse con facilidad en un contexto .NET gracias a la sencilla API C# de IronXL. Xamarin, Linux, macOS, Azure, .NET Core y .NET Framework son totalmente compatibles con IronXL.

2.1 Características de la biblioteca IronXL

  • Entre las mejores bibliotecas de C# para hojas de cálculo Excel se encuentra IronXL, que funciona tanto con .NET Core como con .NET Framework.
  • IronXL es compatible con prácticamente todos los marcos .NET, incluidas las aplicaciones de consola, Windows Forms y web.
  • Windows, macOS y Linux son compatibles con IronXL.
  • Con IronXL se puede acceder rápida y fácilmente a los archivos de Excel.
  • Los formatos de archivo de Excel como archivos XLSX, archivos CSV, XLS, XSLT, TSV, XLSM, y otros, pueden ser leídos por IronXL. Entre nuestras muchas posibilidades se encuentran funciones para importar, actualizar y exportar conjuntos y tablas de datos.
  • Los cálculos para la hoja de cálculo Excel pueden ser generados por IronXL.
  • Para las columnas de Excel, IronXL admite una amplia gama de tipos de datos, como texto, números enteros, fechas, divisas, fórmulas y porcentajes.
  • IronXL admite fechas, monedas, porcentajes, texto, números, fórmulas y otros tipos de datos de columnas de Excel.

3.0 Creación de un proyecto .NET Core 6

Verá lo fácil que es construir un archivo CSV utilizando la biblioteca IronXL en las siguientes secciones de este boletín.

Paso 1: Inicie un nuevo proyecto para generar un archivo CSV.

Abrir Visual Studio y elija "Nuevo proyecto" en el menú "Archivo".

Elija las plantillas de proyecto .NET "Console App" en el cuadro de diálogo siguiente y, a continuación, haga clic en "Siguiente".

Cómo exportar a CSV en .NET Core: Figura 1 - Abra Visual Studio, vaya al menú Archivo y seleccione Nuevo proyecto. De las distintas plantillas de proyecto .NET, elija la Aplicación de consola.

Puede introducir el nombre que desee para el "Nombre del proyecto". Una vez indicada la ubicación del nuevo proyecto en la sección "Ubicación", pulse el botón "Siguiente" para continuar.

Cómo exportar a CSV en .NET Core: Figura 2 - Introduzca el nombre del proyecto apropiado y establezca la ruta de ubicación del proyecto. A continuación, haga clic en el botón Siguiente para continuar.

El menú desplegable Framework permite elegir un .NET Framework. En este caso, la versión de .NET admitida a largo plazo es la 6.0. A continuación, haga clic en el botón "Crear".

Cómo exportar a CSV en .NET Core: Figura 3 - Seleccione un Framework .NET apropiado utilizando el desplegable Framework. En este caso, se selecciona la versión de .NET 6.0 admitida desde hace más tiempo. Por último, haga clic en el botón Crear para crear correctamente el proyecto de aplicación de consola.

Instale la biblioteca IronXL, ya que es necesaria para la resolución posterior. Para ello, introduzca el siguiente comando en la consola del gestor de paquetes:

Install-Package IronXL.Excel

Cómo Exportar a CSV en .NET Core: Figura 4 - Para instalar la biblioteca IronXL, puede utilizar la consola del administrador de paquetes e ingresar el comando dado: Install-Package IronXL.Excel

Una alternativa es buscar el paquete "IronXL" utilizando el Gestor de paquetes NuGet. En la pestaña Examinar, introduzca "IronXL" en el cuadro de búsqueda para buscar la biblioteca IronXL. Desde esta lista de todos los paquetes NuGet relacionados con IronXL, podemos seleccionar el paquete requerido para descargar.

Cómo exportar a CSV en .NET Core: Figura 5 - Otra forma de instalar IronXL es utilizando el Gestor de Paquetes NuGet para Soluciones. Introduzca ironxl en el cuadro de búsqueda para buscar la biblioteca IronXL.

4.0 Exportar datos a archivo CSV

Con IronXL, crear tablas de datos en archivos CSV es sencillo y rápido. Facilita la escritura de datos en un archivo CSV fresco. Primero debemos incluir el espacio de nombres IronXL, como se ve en la captura de pantalla de código a continuación. Una vez presentado IronXL, podemos utilizar sus clases y métodos en nuestro código.

Cómo Exportar a CSV en .NET Core: Figura 6 - Incluya el espacio de nombres IronXL dentro de su archivo de programa utilizando el comando using IronXL. Esto garantiza que podamos utilizar todas las clases y métodos de la biblioteca IronXL en nuestro código.

IronXL puede utilizarse para crear archivos Excel, que posteriormente se convierten en objetos de libro. Una vez convertidos en objetos, podemos trabajar con ellos de varias maneras. Al transformar un DataTable en una hoja de cálculo de Excel, el código fuente de ejemplo que aparece a continuación crea un archivo de Excel.

using IronXL;
using System.Data;

static void main(String [] arg)
{
    exporttoexcel("H:\\test.csv");
}
public static void exporttoexcel(string filepath)
{
DataTable table = new DataTable();
table.Columns.Add("DataSet_Animals", typeof(string));
table.Rows.Add("Lion");
table.Rows.Add("Tiger");
table.Rows.Add("Leopard");
table.Rows.Add("Cheetah");
table.Rows.Add("Hyenas");
var workbook = WorkBook.Create(ExcelFileFormat.XLS);
var writer = workbook.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
    writer ["A" + (rowCount)].Value = row [0].ToString();
    rowCount++;
}
workbook.SaveAsCsv(filepath, ";");
//o 
var stream= workbook.ToStream();
}
using IronXL;
using System.Data;

static void main(String [] arg)
{
    exporttoexcel("H:\\test.csv");
}
public static void exporttoexcel(string filepath)
{
DataTable table = new DataTable();
table.Columns.Add("DataSet_Animals", typeof(string));
table.Rows.Add("Lion");
table.Rows.Add("Tiger");
table.Rows.Add("Leopard");
table.Rows.Add("Cheetah");
table.Rows.Add("Hyenas");
var workbook = WorkBook.Create(ExcelFileFormat.XLS);
var writer = workbook.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
    writer ["A" + (rowCount)].Value = row [0].ToString();
    rowCount++;
}
workbook.SaveAsCsv(filepath, ";");
//o 
var stream= workbook.ToStream();
}
Imports IronXL
Imports System.Data

Shared Sub main(ByVal arg() As String)
	exporttoexcel("H:\test.csv")
End Sub
Public Shared Sub exporttoexcel(ByVal filepath As String)
Dim table As New DataTable()
table.Columns.Add("DataSet_Animals", GetType(String))
table.Rows.Add("Lion")
table.Rows.Add("Tiger")
table.Rows.Add("Leopard")
table.Rows.Add("Cheetah")
table.Rows.Add("Hyenas")
Dim workbook = WorkBook.Create(ExcelFileFormat.XLS)
Dim writer = workbook.DefaultWorkSheet
Dim rowCount As Integer = 1
For Each row As DataRow In table.Rows
	writer ("A" & (rowCount)).Value = row (0).ToString()
	rowCount += 1
Next row
workbook.SaveAsCsv(filepath, ";")
'o 
Dim stream= workbook.ToStream()
End Sub
VB   C#

El ejemplo CSV anterior nos permitirá exportar la Tabla de datos a un fichero CSV. Una vez creada la Tabla de datos, es decir, creados los encabezados de columna y una vez establecida la primera columna, añadimos las filas de una en una. Después de añadir las filas y columnas al objeto DataTable, construimos el objeto libro de trabajo. El objeto libro de trabajo puede utilizarse para añadir datos a una hoja de Excel, que luego pueden guardarse en otro lugar. Estamos construyendo el objeto hoja de trabajo, que podemos añadir al objeto libro de trabajo, para generar hojas de trabajo. Además, podemos utilizar la clase de modelo para generar los archivos.

Antes de añadir el valor a la hoja de cálculo, utilizamos un bucle for each para leer cada valor de la DataTable. La opción SaveAsCsv()La función se utiliza para guardar los datos en un archivo CSV una vez que se han introducido todos en la hoja de cálculo. Nos permite pasar parámetros para el delimitador y el nombre del archivo con la ubicación. Podemos descartar un delimitador como argumento opcional si no es necesario. A continuación, la biblioteca ayuda a escribir los datos en un archivo CSV. Hay otra forma de leer archivos CSV además de Microsoft Excel: podemos utilizar el Bloc de notas. Además, podemos utilizar el método Guardar() que nos permite guardar el mismo en el formato de archivo dado.

Cómo exportar a CSV en .NET Core: Figura 7 - SALIDA Archivo Excel: test.csv

Arriba está la salida del ejemplo de código que se ejecutó. Cada dato de la tabla de datos se ha añadido por separado a la hoja Excel recién creada en la captura de pantalla. Podemos utilizar el flujo en la aplicación web para devolver el archivo que se puede descargar desde el lado del cliente.

Para obtener más información sobre la exportación de datos de DataTable a Excel, consulte lo siguiente tutorial página.

Para saber más sobre cómo exportar datos a Excel, consulte este paso a paso tutorial.

5.0 Conclusión

IronXL es una de las utilidades de Excel más utilizadas. No depende de ninguna otra biblioteca externa. Es autónomo y no necesita tener instalado Microsoft Excel. Además, funciona a través de diversos canales.

Para todas las operaciones relacionadas con documentos de MS Excel implementadas mediante programación, IronXL ofrece una solución integral. Es posible calcular fórmulas, ordenar cadenas o números, recortar, añadir, buscar y reemplazar, combinar y separar, guardar archivos, etc. Además de validar los datos de la hoja de cálculo, también puede establecer los tipos de datos de las celdas. Facilita el trabajo con datos de Excel y permite leer y escribir archivos.

IronXL ofrece un prueba gratuita que ofrece a los usuarios la oportunidad de probar todas sus increíbles funciones de forma gratuita.

En su lanzamiento, IronXL está disponible por $599. Los usuarios también pueden optar por pagar una cuota de suscripción de un año para recibir actualizaciones y asistencia sobre el producto. IronXL ofrece seguridad para la redistribución sin restricciones por un coste adicional. Para obtener datos más precisos sobre precios, visite la página de IronXL página de licencia.

< ANTERIOR
Cómo cargar un archivo Excel en C#
SIGUIENTE >
Biblioteca CSV de C# (Tutorial para desarrolladores)

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 897,936 Ver licencias >
123