Diese einfache Anleitung zeigt, wie man HTML in C# in Text umwandelt**. In C# kann die Konvertierung von HTML in reinen Text einfach durch die Verwendung weniger Codezeilen für jede .NET-basierte Anwendung erreicht werden, die auf Windows-, macOS- oder Linux-Plattformen ausgeführt wird.
Schritte zum Konvertieren von HTML in Text in C#
- Installieren Sie Aspose.HTML for .NET aus dem NuGet-Paket-Manager
- Fügen Sie Aspose.HTML Namespace in Ihr Projekt ein
- Laden Sie den Inhalt der HTML-Datei in einen String
- Erstellen Sie eine Instanz der Klasse HTMLDocument, um den String zu laden, der HTML enthält
- Instanziieren Sie die Klasseninstanz INodeIterator, um Knoten zu durchlaufen und in StringBuilder anzuhängen
- Speichern Sie schließlich konvertierten Text aus HTML auf der Festplatte
Um einfachen Text aus HTML C# zu erhalten, können wenige Codezeilen effektiv in jeder .NET-basierten Anwendung verwendet werden. Der Prozess beginnt mit dem Laden der HTML-Datei als String in die HTMLDocument-Klasse-Instanz mithilfe der File.ReadAllText-Methode. Dann wird INodeIterator verwendet, um Knoten aus HTML zu extrahieren und sie an StringBuilder anzuhängen. Schließlich wird das extrahierte HTML in StringBuilder auf der Festplatte gespeichert.
Code zum Konvertieren von HTML in Text in C#
using System; | |
using System.IO; | |
using System.Text; | |
using Aspose.Html; | |
using Aspose.Html.Dom.Traversal; | |
using Aspose.Html.Dom.Traversal.Filters; | |
namespace KbHtml | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Set the API license to extract HTML text | |
License license = new License(); | |
license.SetLicense("Aspose.Html.lic"); | |
// Reading HTML file content | |
String HtmlContent = File.ReadAllText("Test2.html"); | |
// Create an object of HTMLDocument | |
using (var HtmlDocument = new HTMLDocument(HtmlContent, "")) | |
{ | |
// Initialize the instance of node iterator to iterate HTML | |
INodeIterator iterator = HtmlDocument.CreateNodeIterator(HtmlDocument, NodeFilter.SHOW_TEXT, | |
new StyleFilter()); | |
StringBuilder Stringbld = new StringBuilder(); | |
Aspose.Html.Dom.Node node; | |
// Iterate through Nodes | |
while ((node = iterator.NextNode()) != null) | |
Stringbld.Append(node.NodeValue); | |
Console.WriteLine(Stringbld.ToString()); | |
File.WriteAllText(@"HtmlToText.txt", Stringbld.ToString()); | |
} | |
} | |
} | |
class StyleFilter : NodeFilter | |
{ | |
public override short AcceptNode(Aspose.Html.Dom.Node node) | |
{ | |
// In order to avoid any element during fetching nodes, write the name of element in capital letters | |
return (node.ParentElement.TagName == "STYLE" || node.ParentElement.TagName == "SCRIPT" | |
? FILTER_REJECT : FILTER_ACCEPT); | |
} | |
} | |
} |
Der obige Code in C# konvertiert HTML in reinen Text mit wenigen API-Aufrufen. Wir haben eine angepasste StyleFilter-Klasse verwendet, die die NodeFilter-Klasse erbt, um die AcceptNode-Methode zu überschreiben, die während des Konvertierungsprozesses unerwünschte Knoten aus HTML herausfiltert.
Im vorherigen Thema haben wir gelernt, wie man HTML-Datei in C# erstellen. Während das obige Beispiel in C# programmgesteuert Klartext aus der HTML-Datei erhält.