Потрібно завантажувати HTML-сторінку або веб-сторінку в Excel для обробки, візуалізації або зберігання?Цей посібник пояснює, як конвертувати HTML-контент безпосередньо в робочу книжку Excel за допомогою Aspose.Cells для .NET.

Введення

Конвертувати дані HTML в Excel може бути складною задачею завдяки складності структур HTML і необхідності точного форматування в програмі Excel. однак, з Aspose.Cells для .NET, цей процес стає простим і ефективним.

Ця стаття пройде через кроки, необхідні для конвертації HTML строки або файлу в Excel робочу книгу за допомогою C#. Ми будемо охоплювати все від встановлення необхідного пакету, щоб зберегти кінцевий результат як .xlsx Файли.

Використання випадків для перетворення HTML в Excel

  • Конвертувати електронну пошту або дані CMS в Excel
  • Процес HTML звітів або експорту з платформ третьої сторони
  • Ввезення веб-кабелів в структуровані шини

Крок за кроком інструкція

Крок 1: Налаштування Aspose.Cells для .NET

$ dotnet add package Aspose.Cells

Крок 2: Підготуйте HTML як смугу

Підготуйте свій HTML-контент або з зовнішнього джерела, або безпосередньо в коді.

string htmlString = "<html><body><table><tr><td>Item</td><td>Price</td></tr><tr><td>Book</td><td>20</td></tr></table></body></html>";

Крок 3: Перетворювати струм на струм

Створення HTML в A MemoryStream об’єкт, який необхідний для завантаження HTML-контенту.

using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
    // Proceed with loading the stream into an Excel workbook
}

Крок 4: Завантажити HTML Stream з HtmlLoadOptions

Користувати HtmlLoadOptions Завантажити HTML-контент з MemoryStream Створення Нового Workbook Об’єкт.

using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
    Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
}

Крок 5: Робота з робочою книгою (опціональна)

Після того, як HTML-контент завантажений в Workbook, Наприклад, ви можете хотіти додати формули або стилі.

using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
    Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
    Worksheet sheet = workbook.Worksheets[0];
    // Add formulas, styles, or modify data
}

Крок 6: Зберегти результативний файл Excel

В кінцевому підсумку, зберегти змінений Workbook Завантажити файл на диск.

using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
    Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
    // Optional: Modify the data or format
    Worksheet sheet = workbook.Worksheets[0];
    sheet.AutoFitColumns();
    workbook.Save("converted.xlsx", SaveFormat.Xlsx);
}

Повний код прикладу

Ось повний приклад, який показує, як конвертувати HTML рядка в файл Excel за допомогою Aspose.Cells для .NET.

using System;
using System.IO;
using System.Text;
using Aspose.Cells;

public class HtmlToExcelConverter
{
    public static void Main()
    {
        string html = "<html><body><table><tr><td>Name</td><td>Score</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());
            Worksheet sheet = workbook.Worksheets[0];
            sheet.AutoFitColumns();
            workbook.Save("html_to_excel.xlsx", SaveFormat.Xlsx);
        }

        Console.WriteLine("HTML converted to Excel.");
    }
}

Найкращі практики

ПрактикаПереваги
Використання потоків для веб-інтеграціїЛегше працювати в АПІ
Користувати HtmlLoadOptionsНалаштування або обробка передового HTML-контенту
Автомобільні колонкиПідвищення читальності продукції

Підрозділ: Обробка комплексної структури HTML

При вирішенні складних структур HTML важливо використовувати HtmlLoadOptions класу для персоналізації того, як Aspose.Cells проходить HTML. Це може включати в себе варіанти налаштування, такі як ігнорування певних елементів або поводження з певними тегами по-різному.

using System;
using System.IO;
using System.Text;
using Aspose.Cells;

public class ComplexHtmlToExcelConverter
{
    public static void Main()
    {
        string complexHtml = @"
            <html>
                <body>
                    <table border='1'>
                        <tr>
                            <th>Product</th>
                            <th>Price</th>
                            <th>Quantity</th>
                        </tr>
                        <tr>
                            <td>Laptop</td>
                            <td>$999.99</td>
                            <td>5</td>
                        </tr>
                        <tr>
                            <td>Smartphone</td>
                            <td>$699.99</td>
                            <td>10</td>
                        </tr>
                    </table>
                </body>
            </html>";

        // Create a MemoryStream from the HTML string
        using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(complexHtml)))
        {
            // Use HtmlLoadOptions to customize parsing if needed
            HtmlLoadOptions loadOptions = new HtmlLoadOptions();
            loadOptions.AutoFilterColumns = true;  // Enable auto-filter for columns

            // Load the HTML content into a Workbook
            Workbook workbook = new Workbook(htmlStream, loadOptions);

            // Access the first worksheet
            Worksheet sheet = workbook.Worksheets[0];

            // Auto-fit all columns to improve readability
            sheet.AutoFitColumns();

            // Save the resulting Excel file
            workbook.Save("complex_html_to_excel.xlsx", SaveFormat.Xlsx);
        }

        Console.WriteLine("Complex HTML converted to Excel.");
    }
}

Заключення

Конвертувати HTML-контент в Excel за допомогою Aspose.Cells для .NET є потужним способом інтеграції веб-даних у ваші робочі потоки Excel.Слідуючи цьому керівництву, ви зможете легко обробляти як прості, так і складні структури HTML.

More in this category