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
Praktyka | Korzyści |
---|---|
Używanie strumieni do integracji internetowej | Łatwiej radzić sobie z APIs |
Używanie HtmlLoadOptions | Dostosowanie lub obsługa zaawansowanego treści HTML |
Automatyczne kolumny | Poprawa 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.