C# ile HTML Metne Nasıl Dönüştürülür

Bu basit nasıl yapılır, HTML öğesinin C#** ile nasıl metne dönüştürüleceğini gösterir. C# HTML’den düz metne dönüştürme, Windows, macOS veya Linux platformlarında çalışan herhangi bir .NET tabanlı uygulama için birkaç satır kod kullanılarak kolayca gerçekleştirilebilir.

C# ile HTML’yi Metne Dönüştürme Adımları

  1. NuGet paket yöneticisinden Aspose.HTML for .NET yükleyin
  2. Projenize Aspose.HTML ad alanını dahil edin
  3. HTML dosya içeriğini bir Dize’ye yükleyin
  4. HTML içeren Dizeyi yüklemek için bir HTMLDocument sınıfı örneği oluşturun
  5. Düğümler arasında yineleme yapmak ve StringBuilder’a eklemek için INodeIterator sınıfı örneğini örnekleyin
  6. Son olarak, dönüştürülmüş metni HTML’den diske kaydedin

HTML C#*‘dan *düz metin elde etmek için, herhangi bir .NET tabanlı uygulamada birkaç satır kod etkili bir şekilde kullanılabilir. İşlem, File.ReadAllText yöntemini kullanarak HTML dosyasını String olarak HTMLDocument class örneğine yükleyerek başlar. Ardından INodeIterator, HTML’den düğümleri çıkarmak ve bunları StringBuilder’a eklemek için kullanılacaktır. Son olarak, StringBuilder’da çıkarılan HTML diske kaydedilecektir.

C# ile HTML’yi Metne Dönüştürme Kodu

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# içindeki yukarıdaki kod, birkaç API çağrısı kullanarak HTML’yi düz metne dönüştürür. Dönüştürme işlemi sırasında istenmeyen düğümleri HTML’den filtreleyen AcceptNode yöntemini geçersiz kılmak için NodeFilter sınıfını devralan özelleştirilmiş StyleFilter sınıfını kullandık.

Önceki konuda, nasıl C# ile HTML dosyası oluştur yapılacağını öğrendik. Oysa, C# içindeki yukarıdaki örnek, HTML dosyasından programlı olarak düz metin alır.

 Türkçe