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

Въведение

Конвертирането на HTML данни в Excel може да бъде предизвикателна задача поради сложността на html структурите и необходимостта от точна форматиране във Excel. обаче, с Aspose.Cells за .NET, този процес става прост и ефективен.

Тази статия ще ви преминава през стъпките, необходими за конвертиране на HTML лента или файл в Excel работна книга с помощта на C#. Ние ще покрием всичко от инсталирането на необходимия пакет, за да спестите крайния резултат като .xlsx на файловете.

Използване на случаи за HTML към Excel Conversion

  • Конвертиране на имейл или 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.");
    }
}

Най-добрите практики

ПрактикаПолзите
Използване на потоци за уеб интеграцияПо-лесно е да се справите с APIs
Използване 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