Vytvářejte, čtěte a upravujte soubory HTML v C#

Pokud jste programátor v jazyce C# a hledáte efektivní způsob práce se soubory HTML, pak je tento článek určen právě vám. Vysvětlíme si základy toho, jak C# pracuje se soubory HTML, od jejich úplného vytváření až po čtení a úpravy existujících dokumentů. V tomto článku se naučíme, jak vytvářet, číst a upravovat soubory HTML v C#.

HTML(Hyper Text Markup Language) je jazyk používaný k vytváření webových stránek a webových stránek. C# je na druhé straně objektově orientovaný programovací jazyk používaný k vytváření aplikací. Soubor HTML obsahuje značkovací značky používané k formátování struktury webové stránky pro zobrazení v prohlížečích. V aplikacích .NET můžeme snadno programově manipulovat se soubory HTML. V tomto článku prozkoumáme, jak používat C# ke čtení, zápisu a úpravě souborů HTML. Podíváme se na způsoby, jak analyzovat kód HTML pro konkrétní prvky a vytvářet nové prvky od začátku nebo upravovat ty stávající. Pojďme začít!

Tento článek bude obsahovat následující témata:

  1. C# API pro vytváření, čtení a úpravu souborů HTML
  2. Vytvořit soubor HTML
  3. Přečíst soubor HTML
  4. Upravit soubor HTML
  5. Přidat nezpracovaný obsah HTML v C#

C# API pro vytváření, čtení a úpravy souborů HTML

K vytváření, čtení a úpravám souborů HTML budeme používat Aspose.HTML for .NET API. Jedná se o pokročilé rozhraní API pro zpracování HTML, které umožňuje vytvářet, upravovat a extrahovat data z dokumentů HTML. Umožňuje také převod a vykreslování HTML dokumentů bez jakéhokoli externího softwaru.

Třída HTMLDocument API představuje dokument HTML nebo stránku HTML, kterou vidíme v prohlížeči. Metoda CreateElement() této třídy vytvoří element HTML určený tagName. Metoda CreateTextNode(string) vytvoří uzel Text daný zadaným řetězcem. Metoda AppendChild() rozhraní Node přidá uzel na konec seznamu potomků zadaného nadřazeného uzlu. Metoda Save() uloží výstupní soubor. Můžete si také přečíst více o jmenném prostoru DOM v dokumentaci.

Prosím buď stáhněte si DLL API, nebo jej nainstalujte pomocí NuGet.

PM> Install-Package Aspose.Html

Informace: Jiná rozhraní API Aspose, zejména Aspose.Slides pro .NET, vám také mohou umožnit [upravovat kódy HTML](https://products.aspose. com/slides/net/editor/html/), sloučit HTML, soubory, převést [HTML na JPG](https ://products.aspose.com/slides/net/conversion/html-to-jpg/), PDF , XML, [TIFF](https://products.aspose.com/slides/net/conversion/html -to-tiff/) a další.

Vytvořte soubor HTML v C#

Soubor HTML můžeme snadno vytvořit podle následujících kroků:

  1. Nejprve vytvořte instanci třídy HTMLDocument.
  2. Dále zavolejte metodu CreateElement() k vytvoření prvků, jako je nadpis, odstavec, text atd.
  3. Poté zavolejte metodu CreateTextNode() a přidejte textový uzel.
  4. Dále připojte vytvořený uzel k prvku pomocí metody AppendChild().
  5. Poté připojte prvky k tělu dokumentu pomocí metody HTMLDocument.Body.AppendChild().
  6. Chcete-li přidat další prvky, opakujte výše uvedené kroky.
  7. Nakonec uložte dokument HTML pomocí metody Save(). Jako argument bere cestu k výstupnímu souboru.

Následující ukázka kódu ukazuje, jak vytvořit soubor HTML pomocí C#.

// Tento příklad kódu ukazuje, jak vytvořit dokument HTML.

// Vytvořte prázdný dokument HTML
var document = new HTMLDocument();

// Přidat nadpis
// 1. Vytvořte prvek nadpisu
var h2 = (HTMLHeadingElement)document.CreateElement("h2");

// 2. Vytvořte textový prvek
var text = document.CreateTextNode("This is Sample Heading!");

// 3. přidejte do nadpisu textový prvek
h2.AppendChild(text);

// 4. Přidat nadpis to the document
document.Body.AppendChild(h2);

// Přidat odstavec
// 1. Vytvořte prvek odstavce
var p = (HTMLParagraphElement)document.CreateElement("p");

// 2. Nastavte vlastní atribut
p.SetAttribute("id", "first-paragraph");

// 3. Vytvořte textový uzel
var paraText = document.CreateTextNode("This is first paragraph. ");

// 4. Přidejte text do odstavce
p.AppendChild(paraText);

// 5. Připojte odstavec k tělu dokumentu 
document.Body.AppendChild(p);

// Přidat objednaný seznam
// Vytvořte prvek odstavce
var list = (HTMLOListElement)document.CreateElement("ol");

// Přidejte li položku 1
var item1 = (HTMLLIElement)document.CreateElement("li");
item1.AppendChild(document.CreateTextNode("First list item."));

// Přidejte li položku 2
var item2 = (HTMLLIElement)document.CreateElement("li");
item2.AppendChild(document.CreateTextNode("Second list item."));

// Přidejte li položky do seznamu
list.AppendChild(item1);
list.AppendChild(item2);

// Připojte seznam k tělu dokumentu 
document.Body.AppendChild(list);

// Uložte dokument HTML do souboru 
document.Save(@"C:\Files\html\create-new-document.html");
Vytvořte-soubor-HTML-v-CSharp

Vytvořte soubor HTML v C#

Přečtěte si HTML soubor v C#

V předchozí části jsme vytvořili soubor HTML. Nyní načteme soubor a přečteme jeho obsah podle následujících kroků:

  1. Načtěte existující soubor HTML pomocí třídy HTMLDocument.
  2. Přečtěte si a zobrazte obsah HTMLDocument.DocumentElement.OuterHTML.

Následující ukázka kódu ukazuje, jak číst soubor HTML pomocí C#.

// Tento příklad kódu ukazuje, jak číst soubor HTML
// Připravte výstupní cestu pro uložení dokumentu
string documentPath = @"C:\Files\html\create-new-document.html";

// Načtěte soubor HTML
var document = new HTMLDocument(documentPath);

// Zapište obsah dokumentu do výstupního proudu
Console.WriteLine(document.DocumentElement.OuterHTML);
<html><head></head><body><h2>This is Sample Heading!</h2><p id="first-paragraph">This is first paragraph. </p><ol><li>First list item.</li><li>Second list item.</li></ol></body></html>

Úprava souboru HTML v C#

Můžeme také aktualizovat obsah HTML souborů. Podle výše uvedených kroků můžeme přidat další uzly/prvky. Můžeme však upravit stávající poznámky/prvky podle následujících kroků:

  1. Načtěte existující soubor HTML pomocí třídy HTMLDocument.
  2. Dále zavolejte metodu CreateTextNode() a přidejte textový uzel.
  3. Dále získejte první prvek odstavce pomocí metody GetElementsByTagName(). Jako argument bere “p”.
  4. Poté zavolejte metodu AppendChild() a připojte textový uzel.
  5. Chcete-li upravit více prvků, opakujte výše uvedené kroky.
  6. Nakonec uložte dokument HTML pomocí metody Save(). Jako argument bere cestu k výstupnímu souboru.

Následující ukázka kódu ukazuje, jak upravit soubor HTML pomocí jazyka C#.

// Tento příklad kódu ukazuje, jak upravit obsah esiting souboru HTML.
// Připravte výstupní cestu pro uložení dokumentu
string documentPath = @"C:\Files\html\create-new-document.html";

// Vytvořte instanci dokumentu HTML
var document = new HTMLDocument(documentPath);

// Vytvořte textový uzel
var oldParaText = document.CreateTextNode("This is old first paragraph.");

// Získejte prvek prvního odstavce
var p = (HTMLParagraphElement)document.GetElementsByTagName("p").First();
p.AppendChild(oldParaText);

// Uložte dokument HTML do souboru 
document.Save(@"C:\Files\html\modify.html");
Upravte soubor HTML v CSharp

Úprava souboru HTML v C#

Následující ukázka kódu ukazuje složitější příklad, ve kterém přidáváme nové prvky a upravujeme ty stávající.

// Tento příklad kódu ukazuje, jak a jak upravovat prvky v souboru esiting HTML.
// Připravte výstupní cestu pro uložení dokumentu
string documentPath = @"C:\Files\html\create-new-document.html";

// Vytvořte instanci dokumentu HTML
var document = new HTMLDocument(documentPath);

// Vytvořte prvek stylu a přiřaďte zelenou barvu všem prvkům, jejichž název třídy se rovná 'gr'.
var style = document.CreateElement("style");
style.TextContent = ".rd { color: red }";

// Najděte prvek záhlaví dokumentu a připojte prvek stylu k záhlaví
var head = document.GetElementsByTagName("head").First();
head.AppendChild(style);

// Vytvořte textový uzel
var oldParaText = document.CreateTextNode("This is old first paragraph.");

// Vytvořte prvek odstavce s názvem třídy 'gr'.
var p = (HTMLParagraphElement)document.GetElementsByTagName("p").First();
p.ClassName = "rd";
p.AppendChild(oldParaText);

// Vytvořte prvek odstavce
var newPara = (HTMLParagraphElement)document.CreateElement("p");

// Vytvořte textový uzel
var paraText = document.CreateTextNode("This is second paragraph. ");

// Přidejte text do odstavce
newPara.AppendChild(paraText);

// Připojte odstavec k tělu dokumentu 
document.Body.AppendChild(newPara);

// Uložte dokument HTML do souboru 
document.Save(@"C:\Files\html\edit.html");
Add-Edit-Elements-in-HTML-File- using-CSharp

Přidat a upravit prvky v souboru HTML pomocí C#

Přidejte nezpracovaný obsah HTML v C#

Prvky můžeme přidávat nebo upravovat ručním přidáním kódu HTML jako obsahu pomocí vlastnosti prvku InnerHTML. Surový HTML můžeme přidat podle následujících kroků:

  1. Nejprve vytvořte instanci třídy HTMLDocument.
  2. Dále nastavte obsah prvku Body.InnerHTML jako nezpracovaný řetězec HTML.
  3. Nakonec uložte dokument HTML pomocí metody Save(). Jako argument bere cestu k výstupnímu souboru.

Následující ukázka kódu ukazuje, jak přidat nezpracovaný obsah HTML do souboru pomocí jazyka C#.

// Tento příklad kódu ukazuje, jak přidat Raw HTML do těla HTML.
// Vytvořte instanci dokumentu HTML
using (var document = new HTMLDocument())
{
    // Zapište obsah dokumentu HTML do výstupu konzoly
    Console.WriteLine(document.DocumentElement.OuterHTML); 

    // Nastavte obsah prvku těla
    document.Body.InnerHTML = "<p>HTML is the standard markup language for Web pages.</p>";

    /// Uložte dokument HTML do souboru 
    document.Save(@"C:\Files\html\using-innerHTML.html");
}
Add-Raw-HTML-Content-in-CSharp

Přidejte raw HTML do HTML souboru pomocí C#

Získejte bezplatnou licenci

Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.HTML pro .NET bez omezení hodnocení.

Závěr

V tomto článku jsme se naučili, jak:

  • vytvářet HTML dokumenty programově;
  • načíst existující dokument HTML z cesty místního disku;
  • číst HTML z načteného souboru;
  • přidat nový obsah do existujícího souboru HTML;
  • upravit stávající obsah v C#.

Kromě vytváření, čtení a úprav HTML souborů v C# se můžete dozvědět více o Aspose.HTML for .NET API pomocí dokumentace. V případě jakýchkoli nejasností nás neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také