Editar Tabelas HTML Existentes com uma API .NET
Aspose.HTML for .NET
carrega um arquivo HTML existente em um
HTMLDocument
. Você pode localizar uma tabela com um seletor CSS, atualizar suas células e estilos pelo DOM, adicionar ou remover linhas e salvar o documento completo sem reconstruir o conteúdo não relacionado.
Editar uma Tabela em um Arquivo HTML com C#
O exemplo a seguir abre input.html, seleciona a primeira tabela, altera a primeira célula de dados, adiciona uma linha, atualiza o CSS da tabela e salva o resultado como edited-table.html.
Código C# para Editar uma Tabela 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");
Etapas para Editar uma Tabela HTML
- Abra o arquivo de origem com um construtor de
HTMLDocument. - Localize a tabela necessária com
QuerySelector(). Use um seletor de ID ou classe em vez detablequando o documento contiver várias tabelas. - Selecione uma célula existente e atualize seu
TextContentsem substituir o restante da marcação da tabela. - Adicione uma linha com
InsertRow()e crie suas células comInsertCell(). - Altere a apresentação pela declaração
Styleda tabela e chameSave()para gravar o documento editado completo.
Opções para Editar Tabelas HTML
- Selecione a tabela correta. Use seletores como
#orders,.price-tableoumain tableao editar um documento que contenha mais de uma tabela. - Modifique o conteúdo existente. Altere texto, atributos, classes e CSS embutido das células sem recriar a tabela nem substituir HTML não relacionado.
- Altere a estrutura da tabela. Insira ou exclua linhas e células pelas interfaces DOM de tabela, preservando sua ordem no documento.
- Aplique regras de apresentação modernas. Use propriedades CSS para bordas, largura, alinhamento e espaçamento em vez de atributos HTML de apresentação obsoletos.
- Preserve o documento ao redor. Ao salvar o
HTMLDocumentcarregado, o conteúdo fora da tabela editada é mantido. Para isolar elementos<table>selecionados com sua marcação, consulte Extrair Tabelas HTML .
Documentação sobre Edição de Tabelas HTML
Consulte Editar um Documento HTML para ver exemplos de localização, inserção, alteração e remoção de nós DOM. A documentação de HTML DOM explica a navegação no documento e o modelo de elementos usado para modificar conteúdo HTML programaticamente.
Instalar o Aspose.HTML for .NET
Instale o Aspose.HTML for .NET pelo NuGet usando a CLI do .NET:
dotnet add package Aspose.HTML
Você também pode usar a interface do Gerenciador de Pacotes NuGet ou executar Install-Package Aspose.HTML no Console do Gerenciador de Pacotes. Consulte o
guia de instalação
para configurar a biblioteca ou solicite uma
licença temporária
para avaliar a API sem limitações.
Perguntas Frequentes sobre Edição de Tabelas HTML
1. Como edito uma tabela específica quando a página contém várias tabelas?
Atribua à tabela de destino um ID ou uma classe estável e passe um seletor CSS correspondente, como [id="orders"] ou .price-table, para QuerySelector(). Um seletor genérico table retorna apenas a primeira tabela do documento.
2. Posso alterar uma célula sem substituir a tabela inteira?
Sim. Selecione o elemento <td> ou <th> necessário e atribua seu TextContent para texto simples. Quando a célula precisar conter marcação aninhada, atualize seus filhos DOM ou use InnerHTML apenas com conteúdo confiável.
3. Como adiciono ou removo linhas de uma tabela HTML em C#?
Chame InsertRow() com o índice necessário e adicione células com InsertCell(). Use DeleteRow() para remover uma linha e valide o índice com Rows.Length antes de alterar a estrutura.
4. A formatação da tabela deve ser alterada com atributos HTML ou CSS?
Use CSS para bordas, largura, alinhamento, espaçamento, cores e outras características visuais. Atributos como align, border e cellspacing pertencem ao antigo modelo de apresentação HTML e não devem ser introduzidos em marcação moderna.
5. Salvar uma tabela editada preserva o restante do documento HTML?
Sim. Quando você carrega a origem em um HTMLDocument, modifica apenas os nós da tabela selecionada e salva esse documento, os elementos não relacionados permanecem na saída. Substituir deliberadamente um elemento pai ou seu InnerHTML também pode substituir seus descendentes.
Fluxos Relacionados para Tabelas HTML
Crie tabelas, extraia a marcação completa ou colete valores de células com outros guias do Aspose.HTML for .NET.