.NET APIによる既存HTMLテーブルの編集

Aspose.HTML for .NET は既存のHTMLファイルを HTMLDocument に読み込みます。CSSセレクターでテーブルを特定し、DOMでセルやスタイルを変更し、行を追加または削除して、無関係なコンテンツを再構築せずにドキュメント全体を保存できます。


C#でHTMLファイル内のテーブルを編集

次の例では、input.htmlを開き、最初のテーブルを選択してデータセルを変更し、行を追加してCSSを更新した後、edited-table.htmlとして保存します。

HTMLテーブルを編集するC#コード

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");

HTMLテーブルを編集する手順

  1. HTMLDocument コンストラクターでソースファイルを開きます。
  2. QuerySelector() でテーブルを特定します。複数ある場合はtableではなくIDまたはclassセレクターを使用します。
  3. 既存セルを選択し、他のテーブルマークアップを置き換えずにTextContentを変更します。
  4. InsertRow() で行を追加し、 InsertCell() でセルを作成します。
  5. Styleで表示を変更し、 Save() でドキュメント全体を保存します。

HTMLテーブル編集オプション

  • 対象テーブルを正確に選択できます。 複数のテーブルがある場合は、#orders、.price-table、main tableなどを使用します。
  • 既存コンテンツを変更できます。 テーブルを作り直さずに、セルのテキスト、属性、class、インラインCSSを変更します。
  • 構造を変更できます。 ドキュメント順を維持しながら、テーブルDOMインターフェイスで行やセルを挿入または削除します。
  • CSSで表示を設定できます。 境界線、幅、配置、間隔には、古い表示用HTML属性ではなくCSSを使用します。
  • 周囲のコンテンツを保持できます。 読み込んだHTMLDocumentを保存するとテーブル外の内容も残ります。テーブル要素全体を分離する場合は HTMLテーブルの抽出 を参照してください。

HTMLテーブル編集のドキュメント

HTMLドキュメントの編集 ではDOMノードの検索、挿入、変更、削除を説明しています。 HTML DOM では、HTMLコンテンツをプログラムで変更するためのナビゲーションと要素モデルを解説しています。


Aspose.HTML for .NET のインストール

.NET CLI を使用して、NuGet から Aspose.HTML for .NET をインストールします。

dotnet add package Aspose.HTML

NuGet パッケージ マネージャーの UI を使用するか、パッケージ マネージャー コンソールで Install-Package Aspose.HTML を実行することもできます。セットアップの詳細は インストール ガイド を参照してください。評価制限なしで API を試すには、 一時ライセンス を申請できます。


HTMLテーブル編集に関するFAQ

1. ページに複数のテーブルがある場合、特定のテーブルを編集するにはどうしますか?

対象に安定したIDまたはclassを設定し、[id="orders"]や.price-tableなどをQuerySelector()に渡します。一般的なtableセレクターは最初のテーブルだけを返します。

2. テーブル全体を置き換えずにセルを変更できますか?

はい。対象の<td>または<th>を選択し、プレーンテキストにはTextContentを設定します。入れ子のマークアップにはDOM子ノード、または信頼できる内容のInnerHTMLを使用します。

3. C#で行を追加または削除するにはどうしますか?

必要なインデックスでInsertRow()を呼び出し、InsertCell()でセルを追加します。削除にはDeleteRow()を使用し、事前にRows.Lengthでインデックスを確認します。

4. テーブルの書式設定にはHTML属性とCSSのどちらを使うべきですか?

境界線、幅、配置、間隔、色などにはCSSを使用します。align、border、cellspacingは古いHTML表示モデルに属します。

5. 編集したテーブルを保存しても他のHTMLコンテンツは保持されますか?

はい。ソースをHTMLDocumentへ読み込み、選択したテーブルノードだけを変更して保存すれば、他の要素も出力に残ります。親要素やInnerHTMLを置き換えると、その子孫も置き換わります。

HTMLテーブルに関連する処理

Aspose.HTML for .NETのガイドで、テーブルの作成、マークアップの抽出、セル値の取得を行います。