Cómo convertir HTML a Excel en C#
Cómo convertir HTML a Excel en C#
¿Necesitas cargar una cadena HTML o una página web en Excel para su procesamiento, visualización o almacenamiento? Esta guía explica cómo convertir contenido HTML directamente a un libro de trabajo de Excel utilizando Aspose.Cells para .NET.
Casos de Uso para la Conversión de HTML a Excel
- Convertir datos de correo electrónico o CMS en Excel
- Procesar informes HTML o exportaciones de plataformas de terceros
- Importar tablas web en hojas de cálculo estructuradas
Guía Paso a Paso
Paso 1: Instalar Aspose.Cells para .NET
dotnet add package Aspose.Cells
Paso 2: Preparar HTML como una Cadena
string htmlString = "<html><body><table><tr><td>Artículo</td><td>Precio</td></tr><tr><td>Libro</td><td>20</td></tr></table></body></html>";
Paso 3: Convertir Cadena a Flujo
using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
Paso 4: Cargar Flujo HTML con HtmlLoadOptions
Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
Paso 5: Trabajar con el Libro de Trabajo (Opcional)
Worksheet sheet = workbook.Worksheets[0];
// Agregar fórmulas, estilos o modificar datos
Paso 6: Guardar el Archivo Excel Resultante
workbook.Save("converted.xlsx", SaveFormat.Xlsx);
Ejemplo de Código Completo
using System;
using System.IO;
using System.Text;
using Aspose.Cells;
class Program
{
static void Main()
{
string html = "<html><body><table><tr><td>Nombre</td><td>Puntuación</td></tr><tr><td>Alice</td><td>92</td></tr></table></body></html>";
using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(html)))
{
Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
// Opcional: Modificar los datos o el formato
Worksheet sheet = workbook.Worksheets[0];
sheet.AutoFitColumns();
workbook.Save("html_to_excel.xlsx");
}
Console.WriteLine("HTML convertido a Excel.");
}
}
Mejores Prácticas
Práctica | Beneficio |
---|---|
Usar flujos para la integración web | Más fácil de manejar en APIs |
Usar HtmlLoadOptions | Personalizar el análisis o manejar contenido HTML avanzado |
Ajustar automáticamente las columnas | Mejorar la legibilidad de la salida |