توضح هذه الطريقة البسيطة كيفية ** تحويل HTML إلى نص في C# **. في * C# HTML إلى نص عادي * يمكن تحقيق التحويل بسهولة باستخدام بضعة أسطر من التعليمات البرمجية لأي تطبيق قائم على .NET يعمل في أنظمة التشغيل Windows أو macOS أو Linux.
خطوات تحويل HTML إلى نص في C#
- قم بتثبيت Aspose.HTML for .NET من مدير حزمة NuGet
- قم بتضمين Aspose.HTML مساحة الاسم في مشروعك
- قم بتحميل محتوى ملف HTML إلى سلسلة
- قم بإنشاء مثيل لفئة HTMLDocument لتحميل السلسلة التي تحتوي على HTML
- إنشاء مثيل فئة INodeIterator للتكرار خلال العقد وإلحاقه في StringBuilder
- أخيرًا ، احفظ النص المحول من HTML على القرص
من أجل * الحصول على نص عادي من HTML C# * ، يمكن استخدام بضعة أسطر من التعليمات البرمجية بشكل فعال في أي تطبيق قائم على .NET. تبدأ العملية بتحميل ملف HTML كسلسلة في * HTMLDocument class * مثيل باستخدام طريقة * File.ReadAllText *. ثم سيتم استخدام * INodeIterator * لاستخراج العقد من HTML وإلحاقها بـ StringBuilder. أخيرًا ، سيتم حفظ HTML المستخرج في StringBuilder على القرص.
كود لتحويل HTML إلى نص في 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); | |
} | |
} | |
} |
الكود أعلاه في * C# يحول HTML إلى نص عادي * باستخدام عدد قليل من مكالمات API. لقد استخدمنا فئة * StyleFilter * المخصصة التي ترث * فئة NodeFilter * لتجاوز طريقة * AcceptNode * ، والتي تقوم بتصفية العقد غير المرغوب فيها من HTML أثناء عملية التحويل.
في الموضوع السابق ، تعلمنا كيفية إنشاء ملف HTML في C#. في حين أن المثال أعلاه في * C# يحصل على نص عادي من ملف HTML * برمجيًا.