COMPARACIóN CON OTROS COMPONENTES

Comparación entre IronXL y FastExcel para .NET

Publicado en 8 de mayo, 2023
Compartir:

Cuando se trata de trabajar conDocumentos Excel en C#En la actualidad, dos de las bibliotecas más populares disponibles son IronXL, una solución del paquete Iron Suite, y FastExcel v4. Ambas bibliotecas ofrecen una serie de herramientas y funciones que pueden ayudar a los desarrolladores a manipular y gestionar libros de Excel. Estos dos programas son geniales por separado, pero no bastan. Vamos a evaluar las características que ofrece cada uno, para determinar cuál es la mejor opción para sus necesidades. En este artículo, compararemos IronXL y FastExcel v4, destacando los puntos fuertes y débiles de cada librería, y proporcionando ejemplos de cómo utilizar ambas en C#.

Cómo Leer Datos de Excel e Insertar en una Tabla de Base de Datos en C#: Figura 1 - FastExcel V4 Check Workbook

FastExcel v4

FastExcel v4 es una familia de bibliotecas C# multiproceso que proporcionan herramientas para gestionar libros de Excel. La última versión de FastExcel v4 introduce nuevas funciones como Tables Sheet Manager Pro, que simplifica la gestión de los nombres definidos, y FastExcel SpeedTools, que ayuda a reducir la hinchazón de los libros de trabajo.

Con FastExcel v4, los desarrolladores tienen la opción de elegir entre métodos de cálculo automáticos o manuales, en función de sus necesidades. La biblioteca ofrece una amplia gama de herramientas para manipular hojas y libros de trabajo, incluido el soporte para fórmulas y cálculos ilimitados.

Una de las principales ventajas de FastExcel v4 es su velocidad. La biblioteca está diseñada para ser eficiente, incluso cuando se trata de libros de trabajo grandes o complejos. Incluye cálculos multihilo que pueden acelerar considerablemente el proceso de cálculo, y proporciona herramientas para gestionar el uso de la memoria y optimizar el rendimiento.

FastExcel v4: conjunto de funciones

  • Leer y escribir archivos Excel en formato XLSX
  • Lectura de datos de archivos Excel mediante LINQ
  • Validación de datos y tratamiento de errores
  • API de streaming de alto rendimiento para leer y escribir archivos Excel
  • Soporte para multi-threading para un procesamiento más rápido de archivos Excel de gran tamaño.
  • Compatible con .NET Framework y .NET Core
  • Integración con bibliotecas populares como LINQ, Entity Framework y Apache Spark

IronXL

IronXL es unpotente biblioteca de C que permite a los desarrolladores manipular y crear archivos Excel mediante programación. Ofrece una sintaxis C# familiar y métodos para leer, escribir y modificar archivos Excel, sin dependencias externas ni instalaciones de software adicionales.

Con IronXL, los desarrolladores tienen acceso a una amplia gama de funciones y herramientas que simplifican el trabajo con archivos Excel. Esto incluye la compatibilidad con varios formatos de archivo de Excel, la posibilidad de manipular hojas de cálculo y tablas, y herramientas para gestionar nombres definidos, formatos numéricos, etc. La biblioteca también admite los modos de cálculo automático y manual, junto con cálculos Excel multihilo para optimizar el rendimiento.

Con IronXL, los desarrolladores pueden crear sin esfuerzo nuevos libros de Excel, añadir datos a los existentes y manipular fórmulas y cálculos de Excel mediante código C#. La biblioteca también incluye sólidas herramientas de depuración y funciones como el Explorador de fórmulas y el Administrador de hojas de tablas, que ayudan a solucionar problemas y optimizar el código de Excel.

Características de IronXL

  • Cargue, lea y edite datos de varios formatos de archivo, como XLS, XLSX, CSV y TSV.
  • Exportación y almacenamiento de datos en distintos formatos de archivo, como XLS, XLSX, CSV, TSV y JSON.
  • Utilizar objetos System.Data, que permiten a los usuarios trabajar con hojas de cálculo Excel WorkBook como objetos System.Data.DataSet y System.Data.DataTable.
  • Compatibilidad con fórmulas de Excel, que se recalculan cada vez que se edita una hoja.
  • Permite a los usuarios crear y combinar rangos de forma intuitiva mediante su sencilla sintaxis WorkSheet.
  • Proporcionar funcionalidades para ordenar y filtrar rangos, columnas y filas.
  • Permita a los usuarios dar estilo a las celdas según sus preferencias, incluidos los estilos visuales, la fuente, el tamaño, el patrón de fondo, el borde, la alineación y los formatos numéricos.

Manipulación de documentos Excel con FastExcel v4

Para empezar a utilizar FastExcel v4, deberá descargar la última versión desde el sitio web oficial. Puede utilizar la versión de prueba para evaluar la biblioteca antes de adquirir la versión con licencia completa. Una vez que haya instalado FastExcel v4, puede empezar a utilizar sus herramientas para ayudarle a gestionar archivos Excel.

Cómo leer datos de Excel e insertarlos en una tabla de base de datos en C#: Figura 2 - Instalación de ClosedXML NuGet

Manipulación de archivos Excel

FastExcel v4 proporciona una serie de herramientas para manipular archivos Excel en C#. Puede utilizar FastExcel v4 para abrir y guardar libros de Excel, manipular hojas de cálculo, gestionar nombres definidos y mucho más. Estos son algunos ejemplos de cómo utilizar FastExcel v4 para manipular archivos Excel:

Abrir y guardar libros de Excel

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    // Do some work on the workbook here
    workbook.Save();
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    // Do some work on the workbook here
    workbook.Save();
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	' Do some work on the workbook here
	workbook.Save()
End Using
VB   C#

Manipulación de hojas de cálculo

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    var worksheet = workbook.Worksheets ["Sheet1"];
    // Do some work on the worksheet here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    var worksheet = workbook.Worksheets ["Sheet1"];
    // Do some work on the worksheet here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	Dim worksheet = workbook.Worksheets ("Sheet1")
	' Do some work on the worksheet here
End Using
VB   C#

Gestión de nombres definidos


    using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
    {
        var definedNames = workbook.DefinedNames;
        // Do some work on the defined names here
    }

    using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
    {
        var definedNames = workbook.DefinedNames;
        // Do some work on the defined names here
    }
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
		Dim definedNames = workbook.DefinedNames
		' Do some work on the defined names here
End Using
VB   C#

Optimización de los cálculos

Una de las ventajas más significativas de FastExcel v4 es su capacidad para optimizar los cálculos en los libros de Excel. Los cálculos de Excel pueden convertirse en un cuello de botella a medida que crecen el tamaño y la complejidad de un libro. FastExcel v4 proporciona herramientas para ayudarle a optimizar los cálculos y mejorar el rendimiento.

Cómo Leer Datos de Excel e Insertar en una Tabla de Base de Datos en C#: Figura 3 - Comprar FastExcel V3 - Le ayuda a ejecutar Excel más rápido - Modelos de Decisión

Cálculo automático y manual

Por defecto, los libros de Excel utilizan el cálculo automático, lo que significa que Excel recalcula las fórmulas cada vez que cambia una celda. Esto puede llevar mucho tiempo, especialmente en libros de trabajo grandes. FastExcel v4 le permite alternar entre el cálculo automático y el manual, lo que puede mejorar significativamente el rendimiento. He aquí un ejemplo de cómo pasar al cálculo manual:

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    workbook.CalculationMode = CalculationMode.Manual;
    // Do some work on the workbook here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    workbook.CalculationMode = CalculationMode.Manual;
    // Do some work on the workbook here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	workbook.CalculationMode = CalculationMode.Manual
	' Do some work on the workbook here
End Using
VB   C#

Cuellos de botella en el cálculo de matrices

Los cálculos de matrices también pueden convertirse en un cuello de botella en los libros de Excel. FastExcel v4 proporciona herramientas para ayudarle a optimizar los cálculos de matrices y mejorar el rendimiento. He aquí un ejemplo de cómo optimizar los cálculos de matrices utilizando FastExcel v4:

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas;
    // Do some work on the workbook here
}
using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas;
    // Do some work on the workbook here
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	workbook.OpenCalculationMethods = OpenCalculationMethods.ArrayFormulas
	' Do some work on the workbook here
End Using
VB   C#

Cómo leer datos de Excel e insertarlos en una tabla de base de datos en C#: Figura 4 - Optimización de los cálculos de matrices

Perfilador FastExcel

FastExcel Profiler es una herramienta inestimable para optimizar los cálculos de Excel. FastExcel Profiler proporciona información detallada sobre problemas de cálculo, exceso de bloat y otros problemas que pueden afectar al rendimiento de sus libros de Excel. He aquí un ejemplo de cómo utilizar FastExcel Profiler para optimizar los cálculos:


using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var profiler = new FastExcelProfiler(workbook))
    {
        // Do some work on the workbook here
        profiler.DisplayReport();
    }
}

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var profiler = new FastExcelProfiler(workbook))
    {
        // Do some work on the workbook here
        profiler.DisplayReport();
    }
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	Using profiler = New FastExcelProfiler(workbook)
		' Do some work on the workbook here
		profiler.DisplayReport()
	End Using
End Using
VB   C#

Tablas Sheet Manager Pro

FastExcel TableSheet Manager Pro es otra potente herramienta de la familia FastExcel v4. Proporciona herramientas para ayudarle a gestionar tablas en sus libros de Excel. Tables Sheet Manager Pro le permite gestionar fácilmente un número ilimitado de tablas en una sola hoja de cálculo, lo que puede reducir significativamente el exceso de volumen y mejorar el rendimiento. A continuación se muestra un ejemplo de cómo utilizar Tables Sheet Manager Pro:


using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var manager = new TableSheetManagerPro(workbook))
    {
        // Do some work on the tables here
    }
}

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var manager = new TableSheetManagerPro(workbook))
    {
        // Do some work on the tables here
    }
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	Using manager = New TableSheetManagerPro(workbook)
		' Do some work on the tables here
	End Using
End Using
VB   C#

Formatos numéricos

FastExcel v4 también proporciona herramientas para ayudarle a gestionar los formatos numéricos en sus libros de Excel. Puede utilizar FastExcel v4 para aplicar formatos numéricos a celdas, columnas y filas de sus libros de trabajo. Aquí tiene un ejemplo de cómo aplicar un formato numérico utilizando FastExcel v4:


    using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
    {
        var worksheet = workbook.Worksheets ["Sheet1"];
        var column = worksheet.Columns ["A"];
        column.Style.NumberFormat = "#,##0.00";
    }

    using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
    {
        var worksheet = workbook.Worksheets ["Sheet1"];
        var column = worksheet.Columns ["A"];
        column.Style.NumberFormat = "#,##0.00";
    }
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
		Dim worksheet = workbook.Worksheets ("Sheet1")
		Dim column = worksheet.Columns ("A")
		column.Style.NumberFormat = "#,##0.00"
End Using
VB   C#

Fórmula Explorer

FastExcel v4 proporciona una herramienta de exploración de fórmulas que le permite ver las fórmulas de sus libros de Excel. El Explorador de fórmulas puede ayudarle a solucionar errores en las fórmulas y a optimizar los cálculos. He aquí un ejemplo de cómo utilizar el Explorador de fórmulas:


using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var explorer = new FormulaExplorer(workbook))
    {
        // Do some work on the formulas here
    }
}

using (var workbook = new Workbook(@"C:\Test\MyWorkbook.xlsx"))
{
    using (var explorer = new FormulaExplorer(workbook))
    {
        // Do some work on the formulas here
    }
}
Using workbook As New Workbook("C:\Test\MyWorkbook.xlsx")
	Using explorer = New FormulaExplorer(workbook)
		' Do some work on the formulas here
	End Using
End Using
VB   C#

Manipulación de documentos Excel con IronXL

Aempezar con IronXLtendrá que instalar el paquete IronXL. Puede hacerlo a través del gestor de paquetes NuGet o descargando el paquete desde el sitio web de IronXL. Una vez que haya instalado el paquete, puede comenzar a utilizar IronXL en su proyecto de C#.

Abrir y guardar libros de trabajo: Para abrir un libro de Excel utilizando IronXL, puede utilizar el siguiente código:

WorkBook workbook = WorkBook.Load(@"C:\Test\MyWorkbook.xlsx");
WorkBook workbook = WorkBook.Load(@"C:\Test\MyWorkbook.xlsx");
Dim workbook As WorkBook = WorkBook.Load("C:\Test\MyWorkbook.xlsx")
VB   C#

Esto abrirá el libro de trabajo situado en la ruta especificada. También puede crear un nuevo libro de trabajo utilizando el siguiente código:

WorkBook workbook = WorkBook.Create(ExcelFileFormat.Xlsx);
WorkBook workbook = WorkBook.Create(ExcelFileFormat.Xlsx);
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.Xlsx)
VB   C#

Para guardar un libro de trabajo utilizando IronXL, puede utilizar el siguiente código:

workbook.SaveAs(@"C:\Test\MyWorkbook.xlsx");
workbook.SaveAs(@"C:\Test\MyWorkbook.xlsx");
workbook.SaveAs("C:\Test\MyWorkbook.xlsx")
VB   C#

Esto guardará el libro de trabajo en la ruta especificada.

Cómo leer datos de Excel e insertarlos en una tabla de base de datos en C#: Figura 5 - Guardar un libro

Manipulación de hojas de cálculo de Excel

Para manipular hojas de trabajo en un libro utilizando IronXL, puede utilizar el siguiente código:

WorkSheet worksheet = workbook.WorkSheets ["Sheet1"];
WorkSheet worksheet = workbook.WorkSheets ["Sheet1"];
Dim worksheet As WorkSheet = workbook.WorkSheets ("Sheet1")
VB   C#

Esto obtendrá la hoja de cálculo llamada "Hoja1" del libro de trabajo. A continuación, puede manipular la hoja de cálculo según sea necesario.

Gestión de nombres definidos

IronXL proporciona herramientas para ayudarle a administrar los nombres definidos en sus libros de Excel. Puede utilizar el siguiente código para crear un nombre definido:

worksheet.DefineName("MyRange", worksheet.Range("A1:B10"));
worksheet.DefineName("MyRange", worksheet.Range("A1:B10"));
worksheet.DefineName("MyRange", worksheet.Range("A1:B10"))
VB   C#

Esto creará un nombre definido llamado MiRango que hace referencia al rango A1:B10 de la hoja de cálculo.

Cómo leer datos de Excel e insertarlos en una tabla de base de datos en C#: Figura 6 - CSVList

Aplicación de formatos numéricos

Para aplicar un formato numérico a una celda o rango de celdas utilizando IronXL, puede utilizar el siguiente código:

worksheet ["A1"].Style.NumberFormat.Format = "#,##0.00";
worksheet ["A1"].Style.NumberFormat.Format = "#,##0.00";
worksheet ("A1").Style.NumberFormat.Format = "#,##0.00"
VB   C#

Esto aplicará el formato numérico "#,##0.00" a la celda A1 de la hoja de cálculo.

Optimización de los cálculos

IronXL proporciona herramientas para ayudarle a optimizar los cálculos en sus libros de Excel. Para optimizar los cálculos, puede utilizar el siguiente código:

workbook.SetAutomaticCalculation(false);
workbook.SetAutomaticCalculation(false);
workbook.SetAutomaticCalculation(False)
VB   C#

Esto desactivará el cálculo automático en el libro de trabajo. A continuación, puede calcular manualmente el libro de trabajo utilizando el siguiente código:

workbook.Calculate();
workbook.Calculate();
workbook.Calculate()
VB   C#

Esto calculará todas las fórmulas del libro de trabajo.

Cómo Leer Datos de Excel e Insertar en una Tabla de Base de Datos en C#: Figura 7 - Todas las Fórmulas Calculadas

Comparación

Tanto FastExcel como IronXL son potentes bibliotecas para manipular archivos Excel utilizando el lenguaje C#. Aunque ambas bibliotecas ofrecen funciones similares, hay algunas diferencias clave que las diferencian.

FastExcel es una biblioteca que se centra en mejorar el rendimiento de los cálculos de Excel, especialmente cuando se trabaja con grandes conjuntos de datos. Ofrece funciones como cálculo automático y manual, optimización para cuellos de botella en el cálculo de matrices y métodos de cálculo abiertos. FastExcel también proporciona herramientas como FastExcel Profiler y FastExcel SpeedTools para ayudar a gestionar y optimizar los libros de Excel.

Por otro lado, IronXL es una biblioteca que prioriza la facilidad de uso y la flexibilidad. Proporciona una amplia gama de herramientas para ayudar a los desarrolladores a manipular archivos Excel en código C#. Algunas de estas herramientas incluyen la capacidad de gestionar nombres definidos, trabajar con un número ilimitado de hojas de cálculo y gestionar fácilmente los formatos numéricos. IronXL también admite cálculos Excel multihilo, lo que lo convierte en una gran opción para manejar grandes conjuntos de datos.

Aunque tanto FastExcel como IronXL son potentes bibliotecas para trabajar con archivos Excel en C#, IronXL tiene algunas ventajas que la convierten en la opción preferida de muchos desarrolladores. En primer lugar, IronXL tiene una API más intuitiva, lo que facilita el trabajo y el aprendizaje. En segundo lugar, IronXL es más asequible que FastExcel, lo que lo convierte en la mejor opción para proyectos pequeños o equipos con presupuestos limitados.

Además, IronXL es una biblioteca más ligera en comparación con FastExcel. No tiene la sobrecarga que tiene FastExcel, que puede ralentizar el rendimiento y dificultar la gestión de grandes libros de Excel.

Aunque tanto FastExcel como IronXL son librerías capaces de trabajar con archivos Excel en C#, IronXL es la mejor opción debido a su facilidad de uso, asequibilidad y ligereza.

Conclusión

En conclusión, al comparar FastExcel e IronXL, queda claro que ambas librerías ofrecen una gama de poderosas herramientas y características para manipular archivos Excel utilizando código C#. Sin embargo, existen algunas diferencias clave entre las dos bibliotecas que hacen que IronXL sea la opción preferida de muchos desarrolladores.

Desde un punto de vista técnico, IronXL ofrece una API más intuitiva y fácil de usar, lo que facilita su aprendizaje y uso a desarrolladores de todos los niveles. IronXL también ofrece una biblioteca ligera que no tiene el exceso de hinchazón que puede ralentizar el rendimiento y dificultar la gestión de grandes libros de Excel. Por el contrario, FastExcel se centra más en mejorar el rendimiento de los cálculos de Excel, pero puede resultar más complejo y difícil de trabajar en comparación con IronXL.

Además, IronXL ofrece un modelo de licencia más asequible en comparación con FastExcel, lo que lo convierte en la mejor opción para proyectos más pequeños o equipos con presupuestos limitados. Con una versión con licencia completa de IronXL, los desarrolladores tienen acceso a todas las funciones y herramientas sin ningún cargo adicional ni restricciones.

En general, IronXL es la opción preferida de los desarrolladores que dan prioridad a la facilidad de uso, la asequibilidad y el rendimiento ligero. Con sus potentes herramientas y funciones, incluidos los cálculos multihilo de Excel y la compatibilidad con un número ilimitado de hojas de cálculo, IronXL es una herramienta inestimable para cualquier desarrollador que trabaje con archivos Excel en código C#.

Para los interesados en adquirir IronXL, Iron Software ofreceuna oferta especial donde los clientes pueden comprar los cinco productos de Iron Software por el precio de dos. Esto incluye IronXL, así como otras potentes bibliotecas para trabajar con archivos PDF, OCR y mucho más. Esta oferta ofrece un valor excepcional a los desarrolladores que necesitan una serie de herramientas para respaldar sus proyectos.

Descargar el producto de software.

< ANTERIOR
EPPlus Leer Excel a Datatable C# (IronXL Tutorial)
SIGUIENTE >
Comparación entre IronXL y ClosedXML

¿Listo para empezar? Versión: 2024.11 acaba de salir

Descarga gratuita de NuGet Descargas totales: 1,111,773 Ver licencias >