Необходимо загрузить HTML строку или веб-страницу в Excel для обработки, визуализации или хранения? Этот руководство объясняет, как конвертировать HTML-контент непосредственно в рабочую книгу Excel с помощью Aspose.Cells для .NET.

Введение

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

В этой статье вы пройдете через шаги, необходимые для конвертации HTML строки или файла в рабочую книгу Excel с использованием C#. .xlsx Файлы →

Использовать случаи для HTML в Excel конверсии

  • Конвертировать данные электронной почты или CMS в Excel
  • Процесс HTML отчетов или экспортов с платформ третьих лиц
  • Импортировать веб-таблицы в структурированные шины

Step-by-Step Руководство

Шаг 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 строк в 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