Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Una de las bibliotecas más conocidas,IronXLse 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.
EnIronXL 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.
Los formatos de archivo de Excel como archivos XLSX, archivos CSV, XLS, XSLT, TSV, XLSM, y otros, pueden ser leídos por IronXL. Entre otras muchas posibilidades, existen funciones para importar, actualizar yexportación de conjuntos y tablas de datos.
*Cálculos para la hoja de cálculo de Excel puede ser generada por IronXL.
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.
AbrirVisual 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".
Crear una nueva aplicación de consola en Visual Studio
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.
Configurar el nuevo proyecto
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.
Selección del marco de trabajo de destino .NET
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
Instalar el paquete IronXL
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. En esta lista de todos los paquetes NuGet relacionados con IronXL, seleccione el paquete necesario para descargar.
**Busque e instale el paquete IronXL en la interfaz de usuario del gestor de paquetes NuGet.
Con IronXL, crear tablas de datos en archivos CSV es sencillo y rápido. Facilita la escritura de datos en un archivo CSV fresco. El primer paso es incluir el espacio de nombres IronXL, como se ve en la captura de pantalla de código a continuación. Una vez presentado IronXL, sus clases y métodos pueden utilizarse en el código.
Incluir el espacio de nombres IronXL
IronXL puede utilizarse para crear archivos Excel, que posteriormente se convierten en archivosLibro de trabajo objetos. Después de convertirse en objetos de la clase WorkBook
, es posible 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("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, ";");
//or
var stream = workbook.ToStream();
}
using IronXL;
using System.Data;
static void main(String [] arg)
{
ExportToExcel("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, ";");
//or
var stream = workbook.ToStream();
}
Imports IronXL
Imports System.Data
Shared Sub main(ByVal arg() As String)
ExportToExcel("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, ";")
'or
Dim stream = workbook.ToStream()
End Sub
El ejemplo CSV anterior muestra cómo exportar la Tabla de datos
a un fichero CSV. Una vez creada la Tabla de datos
, es decir, creados los encabezados de las columnas y una vez establecida la primera columna, se añaden las filas de una en una. Después de añadir las filas y columnas al objeto DataTable
, se construye el objeto WorkBook
. El objeto WorkBook
puede utilizarse para añadir datos a una hoja Excel, que luego pueden guardarse en otro lugar. El siguiente paso es iniciar elHoja de trabajo vinculado al libro de trabajo.
Antes de añadir el valor a la hoja de cálculo, se utiliza un bucle foreach
para leer cada valor de la DataTable
. EnGuardar como CSV se utiliza para guardar los datos en un archivo CSV una vez que se han introducido todos en la hoja de cálculo utilizando el nombre del archivo como parámetro. Se puede utilizar 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 manera de leer archivos CSV además de Microsoft Excel utilizando el Bloc de notas. Además, el métodoguardar se utiliza para guardar el mismo en el formato de archivo dado.
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. Alternativamente, también se puede convertir en un flujo como parte de la Aplicación Web para devolver archivos que se pueden descargar desde el lado del cliente.
Para obtener más información sobre la exportación de datos de DataTable a Excel, consulte lo siguientetutorial página.
Para saber más sobre cómo exportar datos a Excel, consulte este enlacetutorial paso a paso.
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 Microsoft Excel implementadas mediante programación,IronXL ofrece una solución integral. Calcular fórmulas, ordenar cadenas o números, recortar, añadir, buscar y reemplazar,fusión y separaciónguardar 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 unprueba gratuita que permite a los usuarios probar todas sus increíbles funciones de forma gratuita.
En su lanzamiento, IronXL está disponible por $749. 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 consultar datos más precisos sobre precios, visite la página de IronXLpágina de licencia.
9 productos API .NET para sus documentos de oficina