如何使用 C# 編輯 Word 文件中的文本

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronWord 透過提供段落文字運行的存取權,可在 Word 文件中直接進行文字編輯。 您可以程式化地修改現有的 DOCX 內容,並精確控制格式段。

快速入門:編輯 Word 文件中的文字

1.安裝 IronWord NuGet 套件 2.使用 WordDocument doc = new WordDocument("file.docx") 載入您的 DOCX 檔案 3.存取段落:doc.Paragraphs[0] 4.修改文字:doc.Paragraphs[0].Texts[0].Text = "新文字"。 5.儲存文件:doc.SaveAs("edited.docx")

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronWord

    PM > Install-Package IronWord

  2. 複製並運行這段程式碼。

    using IronWord;
    
    // Load existing document
    WordDocument doc = new WordDocument("document.docx");
    
    // Edit first paragraph text
    doc.Paragraphs[0].Texts[0].Text = "Updated content";
    
    // Save changes
    doc.SaveAs("updated.docx");
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronWord,免費試用!
    arrow pointer

如何編輯 Word 文件中的文字?

若要編輯 Word 文件中的文本,請載入現有文件並存取目標段落。 段落揭露了一個 Texts 陣列,而 Texts[0] 則參照該段落中執行的第一個文字。 文字運行是具有一致格式的文字片段。 此方法可維持文件的原始結構,同時以程式化的方式更新特定內容。

[{t:(如果一個段落包含多種格式樣式,每個不同的段落都是一個獨立的文字運行。

在處理商業文件時,您需要在不影響整體格式的情況下更新特定部分。 IronWord 保留了文件的排版、樣式和格式,同時允許精確的文字修改。 這對於更新範本文件、個人化表單信函或維護動態報告非常有效。

:path=/static-assets/word/content-code-examples/how-to/edit-text-simple.cs
using IronWord;

// Load a DOCX document
WordDocument doc = new WordDocument("raw_document.docx");

// Edit existing text on the first paragraph
doc.Paragraphs[0].Texts[0].Text = "First paragraph is updated successfully";

// Export docx
doc.SaveAs("edited_document.docx");
Imports IronWord

' Load a DOCX document
Dim doc As New WordDocument("raw_document.docx")

' Edit existing text on the first paragraph
doc.Paragraphs(0).Texts(0).Text = "First paragraph is updated successfully"

' Export docx
doc.SaveAs("edited_document.docx")
$vbLabelText   $csharpLabel

上面的程式碼展示了文字編輯的基本方法。 當您載入一個文件時,IronWord 會將其結構解析成物件的層次結構。 每個段落包含一個或多個文字運行,這些運行可以獨立存取和修改。 這種粒度控制可確保在內容變更的同時,格式保持不變。

編輯前的文件是什麼樣子?

Word文檔顯示兩個Lorem ipsum段落,以紅色和紫色斜體文字顯示,並可看到格式化功能帶

文字修改後會有哪些變化?

Word文件在修改後顯示已編輯文字與多個彩色段落

上圖所示的轉換說明 IronWord 如何在文字編輯過程中維護文件的完整性。 請注意,格式(包括顏色和樣式)保持一致,只有文字內容有所改變。 這種格式的保留對於維持商業應用程式中的專業文件標準至關重要。

如何編輯特定的文字運行?

當一個段落包含多個格式不同的文字行時,可以使用陣列索引來定位特定的文字行。 文字運行採用從零開始的索引,其中Texts[0]是第一次運行, Texts[1]是第二次運行,依此類推。 在這個例子中,我們使用Paragraphs[3].Texts[1]來定位第四段的第二個文字。

了解文字運行對於精確的文件編輯是非常重要的。 單一段落可能包含多個文字運行,如果它包含以下內容:

  • 不同的字型樣式(粗體、斜體、底線)
  • 各種字型大小或顏色
  • 同一段落中的混合格式
  • 超連結或特殊字符
:path=/static-assets/word/content-code-examples/how-to/edit-text-text-run.cs
using IronWord;

// Load the document
WordDocument doc = new WordDocument("text_document.docx");

// Edit second text run in the 4th paragraph
doc.Paragraphs[3].Texts[1].Text = "Edited the textrun successfully within the same paragraph";

// Save to the same file
doc.SaveAs("text_document.docx");
Imports IronWord

' Load the document
Dim doc As New WordDocument("text_document.docx")

' Edit second text run in the 4th paragraph
doc.Paragraphs(3).Texts(1).Text = "Edited the textrun successfully within the same paragraph"

' Save to the same file
doc.SaveAs("text_document.docx")
$vbLabelText   $csharpLabel

此方法可在更新文件時提供外科手術般的精確度。 例如,如果您有一個段落,其中只有某些字詞會以粗體或不同顏色顯示,則每次格式變更都會產生新的文字運行。 透過針對特定的運行,您可以只更新所需的內容,而不會影響周遭的文字或格式。

為什麼文字運行對格式化很重要?

Word 文件顯示三個文字段落在文字執行修改前的紅色、紫色和藍色格式

文字運行是 Word 格式化系統的基礎。 每一個 run 都會維持其本身的屬性,包括字型、大小、顏色和樣式屬性。 當您編輯特定的文字運行時,這些屬性會保持不變,確保您的文件維持專業的外觀。 在使用企業範本或品牌文件時,這一點尤其重要,因為在這些範本或文件中,必須使用一致的格式。

當我針對特定文字執行時會發生什麼情況?

Word 文件顯示已編輯的文字以藍色高亮顯示,紅色箭頭註釋表示已修改的部分

視覺回饋可精確顯示修改了哪些文字。 這種精確的編輯能力對於需要下列功能的應用程式來說非常有價值:

  • 更新表單範本中的特定欄位
  • 修改合約文件中的變數
  • 變更行銷材料中的占位符
  • 更新報告中的資料點,同時保留格式

文字編輯的最佳實務

在您的應用程式中實作文字編輯功能時,請考慮這些最佳實務:

錯誤處理:在嘗試修改段落和文字運行之前,請務必先確認它們是否存在。 使用邊界檢查來防止索引超出範圍的異常:

if (doc.Paragraphs.Count > 0 && doc.Paragraphs[0].Texts.Count > 0)
{
    doc.Paragraphs[0].Texts[0].Text = "Safe update";
}
if (doc.Paragraphs.Count > 0 && doc.Paragraphs[0].Texts.Count > 0)
{
    doc.Paragraphs[0].Texts[0].Text = "Safe update";
}
If doc.Paragraphs.Count > 0 AndAlso doc.Paragraphs(0).Texts.Count > 0 Then
    doc.Paragraphs(0).Texts(0).Text = "Safe update"
End If
$vbLabelText   $csharpLabel

保留格式化:請記住,每個執行的文字都有自己的格式。 如果您需要在已編輯的文字中維持一致的格式,您可能需要適當地合併或分割文字運行。

效能考量:編輯多個文字元素時,請載入一次文件,進行所有必要的變更,並在最後保存一次。 此方法可將 I/O 作業降至最低並提高效能。

文件備份:在進行大量編輯之前,請考慮建立原始文件的備份副本。 此做法可確保資料安全,並在需要時提供回滾選項。

只要遵循這些準則並瞭解文字的運行結構,就能建立強大的文件編輯解決方案,在維持專業品質的同時,有效率地自動更新內容。

常見問題解答

如何使用 C# 編輯現有 Word 文件中的文字?

使用 IronWord,您可以使用 WordDocument 載入 DOCX 檔案,透過 doc.Paragraphs[index] 存取目標段落,並透過 Texts 陣列修改文字,從而編輯文字。例如:doc.Partsagraph[0].Texts[0].Text = "New text"。IronWord 在更新內容時,會保留原始格式。

什麼是 Word 文件中的文字運行?

文本流是段落中具有一致格式的文本片段。IronWord 會將這些區段當成 Texts 陣列中的元素,讓您可以獨立修改特定的格式化區段。如果段落包含多種格式樣式,每個不同的段落都會成為獨立的文字運行。

編輯文字會影響文件的格式嗎?

不會,IronWord 會在您編輯文字時保留文件的版面、樣式與格式。該函式庫可在修改過程中維護文件的完整性,確保顏色、字型和其他格式保持一致,而只有文字內容發生變化。

我可以程式化地更新範本文件嗎?

是的,IronWord 是更新範本文件、個人化表格信件或維護動態報表的理想選擇。您可以載入現有的 DOCX 模版,並以程式化的方式修改特定的文字部分,同時保留整體的文件結構與格式。

編輯 Word 文件後,如何儲存變更內容?

使用 IronWord 進行文字修改後,請使用 SaveAs 方法儲存您的修改。例如:doc.SaveAs("updated.docx")。這會建立一個包含您編輯內容的新檔案,同時保持文件的原始格式和結構。

Ahmad Sohail
全堆疊開發人員

Ahmad 是一名全堆疊開發人員,在 C#、Python 和 Web 技術方面有深厚的基礎。

在加入 Iron Software 團隊之前,Ahmad 從事自動化專案和 API 整合工作,專注於改善效能和開發人員體驗。

在空閒時間,他喜歡嘗試 UI/UX 想法,為開源工具貢獻心力,偶爾也會鑽研技術撰寫和文件,讓複雜的主題更容易理解。

準備好開始了嗎?
Nuget 下載 32,629 | 版本: 2026.2 剛剛發布