Ar reikia įkelti HTML juostą ar žiniatinklio puslapį į Excel, kad būtų galima apdoroti, matyti ar saugoti?Šis vadovas paaiškina, kaip konvertuoti HTML turinį tiesiogiai į “Excel” darbo knygą naudojant Aspose.Cells for .NET .

Introduction

HTML duomenų konvertavimas į Excelą gali būti sudėtinga užduotis dėl HTML struktūrų sudėtingumo ir būtinybės tiksliai formatuoti Excel. Tačiau su Aspose.Cells .NET šis procesas tampa paprastas ir efektyvus.

Šiame straipsnyje jūs pereisite per žingsnius, reikalingus norint konvertuoti HTML juostą ar failą į “Excel” darbo knygą naudojant C#. Mes apimsime viską nuo reikiamo paketo įdiegimo, kad galutinis rezultatas būtų išsaugotas .xlsx ir failą.

Naudokite HTML į Excel konvertavimo atvejus

  • Konvertuoti el. pašto arba CMS duomenis į Excel
  • Procesuoti HTML ataskaitas arba eksportuoti iš trečiųjų šalių platformų
  • Importuoti žiniatinklio lenteles į struktūrizuotus skirtukus

Žingsnis po žingsnio vadovas

1 žingsnis: Įdiegti Aspose.Cells .NET

$ dotnet add package Aspose.Cells

2 žingsnis: paruoškite HTML kaip juostą

Paruoškite savo HTML turinį iš išorės šaltinio arba tiesiogiai kodo viduje.

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 žingsnis: paversti juostą į srovę

Konvertuoti HTML juostą į A MemoryStream objektas, kuris reikalingas HTML turinio įkrovimui.

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

4 žingsnis: Atsisiųskite HTML srautą su HtmlLoadOptions

Use HtmlLoadOptions HTML turinio įkrovimas iš MemoryStream Sukurkite naują Workbook ir objektą.

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

5 žingsnis: Darbas su darbo knyga (neįmanoma)

Kai HTML turinys įkeliamas į WorkbookPavyzdžiui, galite norėti pridėti formules ar stilius.

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 žingsnis: išsaugoti rezultatų Excel failą

Galų gale, išsaugokite modifikuotą Workbook Į failą ant disko.

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

Išsamus kodo pavyzdys

Čia pateikiamas pilnas pavyzdys, kuris parodo, kaip konvertuoti HTML juostą į Excel failą naudojant 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.");
    }
}

Geriausios praktikos

PracticeBenefit
Naudokite srautus interneto integracijaiLengviau tvarkyti APIs
Use HtmlLoadOptionsPritaikyti parsnių arba tvarkyti pažangią HTML turinį
Automatiškai pritaikytos kolonosPagerina produkcijos skaitytiškumą

Pagrindinis straipsnis: HTML struktūrų tvarkymas

Kai kalbama apie sudėtingas HTML struktūras, svarbu naudoti HtmlLoadOptions klasė pritaikyti, kaip Aspose.Cells patenka į HTML. Tai gali apimti nustatymų galimybes, pavyzdžiui, ignoruoti tam tikrus elementus arba tvarkyti konkrečius žymes kitaip.

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

Conclusion

Konvertuojant HTML turinį į Excel naudojant Aspose.Cells .NET yra galingas būdas integruoti žiniatinklio duomenis į jūsų Excel darbo srautus.

More in this category