Trenger du å laste inn en HTML-ledd eller nettside i Excel for behandling, visualisering eller lagring? Denne guiden forklarer hvordan du konverterer HTML innhold direkte til en Excel arbeidsbok ved hjelp av Aspose.Cells for .NET .
Introduction
Konvertere HTML-data til Excel kan være en utfordrende oppgave på grunn av kompleksiteten av HTML strukturer og behovet for nøyaktig formatering i Excel. Men med Aspose.Cells for .NET, blir denne prosessen enkel og effektiv.
Denne artikkelen vil gå deg gjennom de trinnene som trengs for å konvertere en HTML-streng eller fil til en Excel-arbeidsbok ved hjelp av C#. Vi vil dekke alt fra å installere den nødvendige pakken til å spare den endelige utgaven som en .xlsx
og filer.
Bruker tilfeller for HTML til Excel konvertering
- Konverter e-post eller CMS-data til Excel
- Behandle HTML-rapporter eller eksport fra tredjepartsplattformer
- Importerer netttabeller til strukturerte spreadsheets
Step-by-step guide
Steg 1: Installere Aspose.Cells for .NET
$ dotnet add package Aspose.Cells
Steg 2: Forbered HTML som en string
Forbered HTML-innholdet ditt enten fra en ekstern kilde eller direkte innenfor koden.
string htmlString = "<html><body><table><tr><td>Item</td><td>Price</td></tr><tr><td>Book</td><td>20</td></tr></table></body></html>";
Trinn 3: Konvertere String til Stream
Konverter HTML-leddet til en MemoryStream
Objekt, som er nødvendig for å laste HTML-innhold.
using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
// Proceed with loading the stream into an Excel workbook
}
Steg 4: Last ned HTML-strøm med HTMLLoadOptions
Use HtmlLoadOptions
for å laste inn HTML-innholdet fra MemoryStream
og skape en ny Workbook
og objektet.
using (MemoryStream htmlStream = new MemoryStream(Encoding.UTF8.GetBytes(htmlString)))
{
Workbook workbook = new Workbook(htmlStream, new HtmlLoadOptions());
}
Steg 5: Arbeid med arbeidsboken (alternativt)
Når HTML-innholdet er lastet inn i en Workbook
Du kan manipulere det som nødvendig. for eksempel vil du kanskje legge til formler eller stiler.
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
}
Steg 6: Lagre den resulterende Excel-filen
Endelig sparer vi den modifiserte Workbook
til en fil på disk.
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);
}
Komplett kode eksempler
Her er et komplett eksempel som viser hvordan du konverterer en HTML-ledd til en Excel-fil ved hjelp av Aspose.Cells for .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.");
}
}
Beste praksis
Practice | Benefit |
---|---|
Bruker strømmer for webintegrasjon | Lett å håndtere i APIs |
Use HtmlLoadOptions | Tilpasse parsing eller håndtere avansert HTML-innhold |
Auto-Fit kolonner | Bedre lesbarhet av produksjon |
Subseksjon: Håndtering av komplekse HTML strukturer
Når du arbeider med komplekse HTML-strukturer, er det viktig å bruke HtmlLoadOptions
Klassen til å tilpasse hvordan Aspose.Cells passerer HTML. Dette kan inkludere innstillinger som å ignorere visse elementer eller håndtere spesifikke tags annerledes.
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
Konvertering av HTML-innhold til Excel ved hjelp av Aspose.Cells for .NET er en kraftig måte å integrere webdata i Excel-arbeidsflyter. Ved å følge denne guiden, vil du være i stand til å håndtere både enkle og komplekse HTML strukturer med enkelhet.