Konieczne jest załadowanie paska HTML lub strony internetowej do programu Excel w celu przetwarzania, wizualizacji lub przechowywania?Ten przewodnik wyjaśnia, jak konwertować zawartość HTML bezpośrednio do książki roboczej programu Excel przy użyciu Aspose.Cells dla .NET.

Wprowadzenie

Konwersja danych HTML do programu Excel może być trudnym zadaniem ze względu na złożoność struktur HTML i potrzebę precyzyjnego formatowania w programie Excel. jednak, z Aspose.Cells dla programu .NET, proces ten staje się prosty i wydajny.

W tym artykule przejdziesz przez kroki wymagane do konwersji łańcucha HTML lub pliku do księgi roboczej programu Excel za pomocą C .xlsx w pliku.

Wykorzystanie przypadków do konwersji HTML do programu Excel

  • Konwersja danych e-mail lub CMS do programu Excel
  • Przetwarzanie raportów HTML lub eksportu z platform trzecich
  • Importowanie tabeli internetowych do strukturowanych arkuszy

Przewodnik krok po kroku

Krok 1: Instalacja Aspose.Cells dla .NET

$ dotnet add package Aspose.Cells

Krok 2: Przygotuj HTML jako strumień

Przygotuj treść HTML z zewnętrznego źródła lub bezpośrednio w kodzie.

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

Krok 3: Konwertuj strumień na strumień

Konwertuj strumień HTML na MemoryStream Obiekt, który jest wymagany do ładowania zawartości HTML.

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

Krok 4: Pobierz strumień HTML za pomocą opcji HtmlLoad

Używanie HtmlLoadOptions Aby pobrać zawartość HTML z MemoryStream i stworzyć nowy Workbook i obiektów.

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

Krok 5: Praca z książką roboczą (opcjonalna)

Gdy zawartość HTML zostanie załadowana do Workbook, Na przykład, możesz chcieć dodać formuły lub stylów.

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
}

Krok 6: Zapisz wynik pliku Excel

Wreszcie, pozbyć się zmienionej Workbook do pliku na dysku.

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);
}

Pełny przykład kodu

Oto kompletny przykład, który pokazuje, jak konwertować pasek HTML do pliku Excel za pomocą Aspose.Cells dla .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.");
    }
}

Najlepsze praktyki

PraktykaKorzyści
Używanie strumieni do integracji internetowejŁatwiej radzić sobie z APIs
Używanie HtmlLoadOptionsDostosowanie lub obsługa zaawansowanego treści HTML
Automatyczne kolumnyPoprawa czytelności produkcji

Podsekcja: Zarządzanie złożonymi strukturami HTML

Jeśli chodzi o skomplikowane struktury HTML, ważne jest, aby HtmlLoadOptions Klasa do dostosowania, jak Aspose.Cells pasuje do HTML. To może obejmować opcje ustawienia, takie jak ignorowanie niektórych elementów lub traktowanie określonych etykiet inaczej.

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.");
    }
}

konkluzja

Konwersja zawartości HTML do programu Excel za pomocą Aspose.Cells dla .NET jest potężnym sposobem integracji danych internetowych w przepływach roboczych programów Excel. Poprzez ten przewodnik będziesz w stanie łatwo obsługiwać zarówno proste, jak i złożone struktury HTML.

More in this category