Šis paprastas patarimas parodo, kaip konvertuoti HTML į tekstą C#. C# HTML į paprastą tekstą galima lengvai konvertuoti naudojant kelias kodo eilutes bet kuriai .NET pagrįstai programai, veikiančiai Windows, macOS arba Linux platformose.
Veiksmai, kaip konvertuoti HTML į tekstą C#
- Įdiekite Aspose.HTML for .NET iš NuGet paketų tvarkyklės
- Į savo projektą įtraukite Aspose.HTML vardų erdvę
- Įkelkite HTML failo turinį į eilutę
- Sukurkite HTMLDocument klasės egzempliorių, kad įkeltumėte eilutę, kurioje yra HTML
- Sukurkite INodeIterator klasės egzempliorių, kad galėtumėte kartoti per mazgus ir pridėti prie StringBuilder
- Galiausiai išsaugokite konvertuotą tekstą iš HTML diske
Norint gauti paprastą tekstą iš HTML C#, kelios kodo eilutės gali būti efektyviai naudojamos bet kurioje .NET pagrįstoje programoje. Procesas prasideda įkeliant HTML failą kaip eilutę į HTMLDocument class egzempliorių naudojant File.ReadAllText metodą. Tada INodeIterator bus naudojamas mazgams išgauti iš HTML ir pridėti juos prie StringBuilder. Galiausiai “StringBuilder” ištrauktas HTML bus išsaugotas diske.
Kodas konvertuoti HTML į tekstą 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); | |
} | |
} | |
} |
Aukščiau pateiktas kodas C# konvertuoja HTML į paprastą tekstą naudodamas kelis API iškvietimus. Naudojome tinkintą StyleFilter klasę, kuri paveldi NodeFilter klasę, kad nepaisytų AcceptNode metodo, kuris konvertavimo proceso metu išfiltruoja nepageidaujamus HTML mazgus.
Ankstesnėje temoje sužinojome, kaip sukurti HTML failą C#. Tuo tarpu aukščiau pateiktame pavyzdyje C# programiškai gaunate paprastą tekstą iš HTML failo.