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ácticaBeneficio
Usar flujos para la integración webMás fácil de manejar en APIs
Usar HtmlLoadOptionsPersonalizar el análisis o manejar contenido HTML avanzado
Ajustar automáticamente las columnasMejorar la legibilidad de la salida
 Español