Modifier des tableaux HTML existants avec une API .NET
Aspose.HTML for .NET
charge un fichier HTML existant dans un
HTMLDocument
. Localisez un tableau avec un sélecteur CSS, modifiez ses cellules et ses styles via le DOM, ajoutez ou supprimez des lignes et enregistrez le document complet sans reconstruire le reste du contenu.
Modifier un tableau dans un fichier HTML en C#
L’exemple ouvre input.html, sélectionne le premier tableau, modifie sa première cellule de données, ajoute une ligne, actualise son CSS et enregistre le résultat sous edited-table.html.
Code C# pour modifier un tableau HTML
using Aspose.Html;
using System;
// Load the HTML document that contains the table
using HTMLDocument document = new HTMLDocument("input.html");
// Select the first table and verify that it exists
HTMLTableElement table = (HTMLTableElement)document.QuerySelector("table");
if (table == null)
{
throw new InvalidOperationException("The HTML document does not contain a table.");
}
// Update the first data cell when one is available
HTMLTableCellElement firstCell = (HTMLTableCellElement)table.QuerySelector("td");
if (firstCell != null)
{
firstCell.TextContent = "Updated value";
}
// Append a row and populate its cells
HTMLTableRowElement newRow = (HTMLTableRowElement)table.InsertRow(table.Rows.Length);
string[] values = { "New item", "Ready" };
foreach (string value in values)
{
HTMLTableCellElement cell = (HTMLTableCellElement)newRow.InsertCell(newRow.Cells.Length);
cell.TextContent = value;
}
// Apply CSS without replacing the table's other attributes
table.Style.SetProperty("border", "1px solid #808080");
table.Style.SetProperty("border-collapse", "collapse");
table.Style.SetProperty("width", "100%");
// Save the complete modified document
document.Save("edited-table.html");
Étapes pour modifier un tableau HTML
- Ouvrez le fichier source avec un constructeur
HTMLDocument. - Localisez le tableau avec
QuerySelector(). Utilisez un sélecteur d’ID ou de classe si le document en contient plusieurs. - Sélectionnez une cellule et modifiez son
TextContentsans remplacer le reste du tableau. - Ajoutez une ligne avec
InsertRow()et ses cellules avecInsertCell(). - Modifiez la présentation via
Style, puis appelezSave()pour enregistrer le document complet.
Options de modification des tableaux HTML
- Cibler le bon tableau. Utilisez
#orders,.price-tableoumain tablelorsqu’un document contient plusieurs tableaux. - Modifier le contenu existant. Changez texte, attributs, classes et CSS en ligne sans recréer le tableau ni remplacer le reste du HTML.
- Changer la structure. Insérez ou supprimez des lignes et cellules via les interfaces DOM dédiées tout en conservant leur ordre.
- Appliquer une présentation moderne. Utilisez CSS pour les bordures, la largeur, l’alignement et l’espacement plutôt que des attributs HTML de présentation obsolètes.
- Préserver le document. L’enregistrement du
HTMLDocumentchargé conserve le contenu extérieur au tableau. Pour isoler des éléments<table>avec leur balisage, consultez Extraire des tableaux HTML .
Documentation sur la modification des tableaux HTML
Le guide Modifier un document HTML montre comment rechercher, insérer, modifier et supprimer des nœuds DOM. La documentation HTML DOM explique la navigation et le modèle d’éléments utilisé pour modifier le contenu HTML par programmation.
Installer Aspose.HTML for .NET
Installez Aspose.HTML for .NET depuis NuGet avec l’interface CLI .NET :
dotnet add package Aspose.HTML
Vous pouvez également utiliser l’interface du gestionnaire de packages NuGet ou exécuter Install-Package Aspose.HTML dans la console du gestionnaire de packages. Consultez le
guide d’installation
pour la configuration, ou demandez une
licence temporaire
afin d’évaluer l’API sans limitations.
Questions fréquentes sur la modification des tableaux HTML
1. Comment modifier un tableau précis lorsqu’une page en contient plusieurs?
Attribuez-lui un ID ou une classe stable et passez à QuerySelector() un sélecteur comme [id="orders"] ou .price-table. Le sélecteur générique table renvoie uniquement le premier tableau.
2. Puis-je modifier une cellule sans remplacer tout le tableau?
Oui. Sélectionnez l’élément <td> ou <th> et affectez du texte brut à son TextContent. Pour du balisage imbriqué, modifiez ses enfants DOM ou utilisez InnerHTML avec un contenu fiable.
3. Comment ajouter ou supprimer des lignes en C#?
Appelez InsertRow() avec l’index voulu, puis ajoutez des cellules avec InsertCell(). Utilisez DeleteRow() pour supprimer une ligne après avoir validé l’index avec Rows.Length.
4. Faut-il modifier la présentation avec des attributs HTML ou CSS?
Utilisez CSS pour les bordures, la largeur, l’alignement, l’espacement et les couleurs. Les attributs align, border et cellspacing appartiennent à l’ancien modèle de présentation HTML.
5. Le reste du document est-il conservé lors de l’enregistrement?
Oui. Si vous chargez la source dans un HTMLDocument, ne modifiez que les nœuds du tableau et enregistrez ce document, les autres éléments restent présents. Remplacer un parent ou son InnerHTML remplace aussi ses descendants.
Opérations associées aux tableaux HTML
Créez des tableaux, extrayez leur balisage ou récupérez les valeurs des cellules avec Aspose.HTML for .NET.