使用 IRONWORD 如何使用 C# 操作 Word 文檔 Jordi Bardia 更新:2026年1月18日 下載 IronWord NuGet 下載 開始免費試用 LLM副本 LLM副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 微軟開發 Word 的目的是為了用作文字處理軟體。 該軟體最初以 Multi-Tool Word 的名稱面向 Xenix 系統推出,於 1983 年 10 月 25 日發布。隨後,該軟體開發了適用於各種作業系統的版本,例如 SCO Unix (1990)、Microsoft Windows (1989)、Atari ST (1988)、OS/2 (1989)、AT&T UNIX PC (1985)、執行 DOS 的 IBM PC (1983)、AT&T UNIX PC (1985)、執行 DOS 的 IBM PC (1983)、 190175 年運行的 Applepix、Webp、Eppppp、 (2010)、iOS (2014) 和 Android (2015)。 Wine 可用於在 Linux 系統上執行舊版的 Microsoft Word。 商業版 Word 可以作為獨立應用程式或Microsoft 365的元件進行許可,Microsoft 365 可以購買永久許可或作為 Microsoft 365 訂閱的一部分。 在本文中,我們將藉助 Microsoft Interop 組件,使用 C# 操作 Word 文檔,並探討IronXL如何協助我們編輯 Excel 文檔。 How To Manipulate Word Document Using C 建立一個全新的 Visual Studio 專案。 設定讀取 Word 文件所需的庫。 若要操作 Word 文檔,請載入現有文件或建立新文件。 編輯文檔資料並解析文件。 刪除所有已建立的物件。 什麼是 Microsoft Interop 使用 C# 或.NET編寫的程式可以透過 Office Interoperability for Microsoft Word 建立或開啟 Word 文件(DOC、DOCX 和 RTF)。 然而,在專案中使用時,它有許多缺點。 本文將討論使用 C# 或 VB .NET中的 Microsoft Office Interop(Word 自動化)時可能遇到的常見問題。 例如: 所有用於 Word 自動化的用戶端 PC 都需要獲得 Microsoft Word 的授權。 每台客戶端電腦上都必須安裝相同版本的 Microsoft Word。 當使用自動化功能時,Word 會佔用幾兆位元組的 RAM 在背景載入不同的檔案和 DLL。 Microsoft Word API 是透過 COM 物件存取的。 從託管程式碼呼叫 COM 物件時可能會出現問題,例如型別轉換、需要 COM 包裝器以及.NET Framework整合不良等。 在 Visual Studio 中建立新項目 使用 Interop 程式庫之前,必須啟動 Visual Studio 並建立一個.NET專案。 Visual Studio 與任何版本都相容,但建議使用最新版本。 根據您的需要,您可以開發專案範本或類似 Windows Forms 的應用程式。 為了簡單起見,我將使用控制台應用程式。 配置項目詳情 接下來,請提供項目地點和名稱。 使用.NET Framework建立一個新的專案文件 使用框架下拉式選單,您可以選擇.NET Framework 。 本項目將採用.NET Framework 4.7。 下一步是按下"創建"按鈕。 應用程式產生解決方案後,您可以透過存取 Program.cs 檔案輸入程式碼並建置或執行程式。 現在 Microsoft.Office.Interop.Word 庫已經加入完畢,我們可以測試程式碼了。 安裝 Interop 庫 下一次修復需要安裝互通性庫。 要完成此操作,請在NuGet套件管理器控制台中輸入以下命令: Install-Package Microsoft.Office.Interop.Word 尋找"Interop"套件的另一種方法是使用NuGet套件管理器。 在所有與 Interop 相關的NuGet套件中,我們可以從清單中選擇所需的套件進行下載。 如何使用 C# 操作 Word 文件:圖 5 - 選擇庫 安裝完所有必要的程式庫之後,就可以開始編輯 DOCX 檔案了。 使用互通性操作現有 Word 文檔 若要使用 Microsoft Word,您必須先建立一個 Microsoft.Office.Interop.Word.Application 實例。 在這種情況下,將進行 Word 文件的交流。 下一步是使用我們剛剛建立的 Microsoft.Office.Interop.Word.Application 實例的 Documents 屬性建立一個新的 Word 文件實例。 如下面的 C# 程式碼片段所示,這允許我們以程式設計方式操作 Word 文件: using System; using Microsoft.Office.Interop.Word; class Program { static void Main() { try { // Create a new instance of Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Open an existing document var WordDoc = WordApp.Documents.Open(@"d:/Demo.docx"); // Edit the content of the first paragraph WordDoc.Paragraphs[1].Range.Text = "New text here..."; // Save the edited document WordDoc.SaveAs(@"d:/NewDemo.docx"); // Close the document WordDoc.Close(); // Quit the Word application WordApp.Quit(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } } using System; using Microsoft.Office.Interop.Word; class Program { static void Main() { try { // Create a new instance of Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Open an existing document var WordDoc = WordApp.Documents.Open(@"d:/Demo.docx"); // Edit the content of the first paragraph WordDoc.Paragraphs[1].Range.Text = "New text here..."; // Save the edited document WordDoc.SaveAs(@"d:/NewDemo.docx"); // Close the document WordDoc.Close(); // Quit the Word application WordApp.Quit(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } } Imports System Imports Microsoft.Office.Interop.Word Friend Class Program Shared Sub Main() Try ' Create a new instance of Word Application Dim WordApp = New Microsoft.Office.Interop.Word.Application() ' Open an existing document Dim WordDoc = WordApp.Documents.Open("d:/Demo.docx") ' Edit the content of the first paragraph WordDoc.Paragraphs(1).Range.Text = "New text here..." ' Save the edited document WordDoc.SaveAs("d:/NewDemo.docx") ' Close the document WordDoc.Close() ' Quit the Word application WordApp.Quit() Catch ex As Exception Console.WriteLine(ex.ToString()) End Try End Sub End Class $vbLabelText $csharpLabel 在上面的程式碼中,我們可以使用 C# 編輯 Word 文件。 首先,我們使用 Interop 建立一個 Word 應用程式實例。然後使用 Open 方法開啟一個現有的 Word 文件,並將其轉換為文件物件。 然後,我們可以存取與文件互動的各種屬性和方法。 在這個範例中,我們使用 Paragraphs 集合和索引來更新第一段的文本,以指定要編輯的段落。 最後,更改儲存為 SaveAs,文件和應用程式也正確關閉。 IronXL庫是 Interop 的替代方案 IronXL是 Microsoft Interop 的替代方案,可用於.NET程式中處理 Excel 檔案。 雖然 Microsoft Interop 需要透過 Interop 組件與 Excel 進行交互,但IronXL提供了一種更直接、有效且強大的方法,可以在.NET環境中以程式設計方式操作 Excel 檔案。 使用IronXL而不是 Microsoft Interop 有以下幾個優點: -效能和資源效率:與依賴電腦上安裝的 Excel 應用程式的 Microsoft Interop 相比, IronXL 的效能更好,使用的資源更少,因為它不依賴 Excel 應用程式。 -易用性和簡潔性: IronXL提供了一個更易於使用的 API,簡化了 Excel 檔案的讀取、寫入和操作,而無需像 Microsoft Interop 那樣複雜。 -相容性和依賴性: IronXL無需在電腦上安裝 Microsoft Excel,從而消除了與各種版本的 Excel 或 Office 可能出現的依賴性和相容性問題。 -平台獨立性:與可能與特定 Microsoft Office 版本更密切相關的 Microsoft Interop 不同, IronXL提供了更大的靈活性,並且易於在各種環境和平台上部署。 對於必須以程式方式操作 Excel 檔案的.NET開發人員來說, IronXL通常是一個更好的選擇,因為它易於使用、速度快,並且減少了對第三方軟體安裝的依賴。 然而, IronXL和 Microsoft Interop 之間的選擇可能會受到專案的具體情況、現有基礎設施以及使用者對每個庫的熟悉程度的影響。 在選擇這些選項時,請務必牢記您的應用程式的要求。 點擊此連結了解更多關於IronXL庫的資訊。 安裝IronXL庫 由於即將發布的補丁需要IronXL庫,請安裝它。 若要完成此操作,請開啟NuGet套件管理員控制台並鍵入下列命令: Install-Package IronWord 另一種方法是透過NuGet套件管理器搜尋" IronXL "套件。從與IronXL關聯的所有NuGet套件清單中,我們可以選擇需要下載的套件。 使用IronXL編輯 Excel 文檔 只需幾行程式碼即可將資料匯出為 XLSX 或 XLS 格式。 以下原始程式碼範例展示如何將資料從 Excel 檔案匯出為簡單的表格格式: using IronXL; class Program { static void Main() { // Load an existing Excel file var workbook = WorkBook.Load("Demo file.xlsx"); // Access the first sheet or the sheet by name var ws = workbook.GetWorkSheet("Sheet1"); // Read a value from a cell and output it to the console string address_val = ws["A1"].ToString(); Console.WriteLine(address_val); // Modify a cell's value ws["A2"].Value = "Hello World"; // Save the workbook to different formats workbook.SaveAs("export.xlsx"); workbook.SaveAs("export.xls"); workbook.WorkSheets[0].SaveAs("export.xls"); } } using IronXL; class Program { static void Main() { // Load an existing Excel file var workbook = WorkBook.Load("Demo file.xlsx"); // Access the first sheet or the sheet by name var ws = workbook.GetWorkSheet("Sheet1"); // Read a value from a cell and output it to the console string address_val = ws["A1"].ToString(); Console.WriteLine(address_val); // Modify a cell's value ws["A2"].Value = "Hello World"; // Save the workbook to different formats workbook.SaveAs("export.xlsx"); workbook.SaveAs("export.xls"); workbook.WorkSheets[0].SaveAs("export.xls"); } } Imports IronXL Friend Class Program Shared Sub Main() ' Load an existing Excel file Dim workbook = WorkBook.Load("Demo file.xlsx") ' Access the first sheet or the sheet by name Dim ws = workbook.GetWorkSheet("Sheet1") ' Read a value from a cell and output it to the console Dim address_val As String = ws("A1").ToString() Console.WriteLine(address_val) ' Modify a cell's value ws("A2").Value = "Hello World" ' Save the workbook to different formats workbook.SaveAs("export.xlsx") workbook.SaveAs("export.xls") workbook.WorkSheets(0).SaveAs("export.xls") End Sub End Class $vbLabelText $csharpLabel 前面的範例透過呼叫 Load 函數載入一個已存在的 Excel 文件,該函數接受文件路徑和名稱的參數。 檔案匯入到 WorkBook 物件中已完成。 然後藉助 GetWorkSheet 載入 Excel 工作表,這使我們能夠使用工作表名稱載入工作表。 然後使用 Excel 位址讀取該值。 想了解更多關於讀取Excel檔案的信息,請點擊這裡。 我們可以使用相同的 Excel 位址來變更 Excel 表格中的值。 可使用 @@--CODE-207--CODE-207 物件提供的 @@--CODE-206--CODE-207 函數將 Excel 文件儲存為 XLSX 或 XLS 檔案。 透過此過程,整個文件將以所選格式儲存。 此外,我們也可以透過索引值或名稱來選擇特定的 Excel 工作表。 接下來,我們可以使用 SaveAs 選項將 Excel 電子表格中的資料匯出到另一個檔案。 點擊此連結了解更多關於格式化和匯出Excel檔案的資訊。 結論 IronXL是Excel最受歡迎的插件之一。 它不依賴任何額外的外部庫。 由於它是獨立運行的,因此無需安裝 Microsoft Excel。 它透過多種管道運作。 這與 Interop 庫形成對比,Interop 庫必須使用額外的庫來解析文件才能編輯 Word 文件。 IronXL為任何使用 Microsoft Excel 文件的程式設計過程提供了一個完整的解決方案。 計算、對字串或數字進行排序、修剪、添加、查找和替換、合併和取消合併以及文件存儲只是眾多可用操作中的幾個例子。 電子表格資料不僅可以進行驗證,還可以建立新的單元格資料形式。 它方便讀取和寫入文件以及處理 Excel 資料。 IronXL剛發佈時售價為 $799。 或者,客戶可以選擇支付一年的訂閱費,以獲得軟體更新和支援。 IronXL提供收費的防未經授權再分送安全保障。 前往IronXL許可頁面。 想了解更多關於Iron Software產品的信息,請點擊這裡。 常見問題解答 我如何用 C# 操作 Word 文件? 要使用 C# 操作 Word 文件,你可以使用 Microsoft.Office.Interop.Word 庫。這涉及創建 Word 應用程序的實例、打開文件、進行更改,並以程式化方式保存文件。 使用 Microsoft Interop 進行 Word 文件操作的限制是什麼? 使用 Microsoft Interop 的限制包括每台客戶端 PC 都需要經授權的 Microsoft Word 版本,潛在的版本相容性問題,以及由於背景程序而增加的記憶體消耗。 我如何在 Visual Studio 中設置 C# 項目以處理 Word 文件? 在 Visual Studio 中,你可以通過選擇控制台應用程式來設置新項目,配置必要的項目細節,並確保選擇正確的 .NET Framework 版本。然後需要通過 NuGet 套件管理器添加對 Microsoft.Office.Interop.Word 的引用。 IronXL 和 Microsoft Interop 在處理 Excel 文件方面有哪些區別? IronXL 相比 Microsoft Interop,提供了優勢,如不需要安裝 Excel,提供更好的性能,並擁有簡化的 API 來操作 Excel 文件。它還消除了與 Interop 方法相關的相容性問題。 如何在我的 .NET 項目中安裝 IronXL? 要在您的 .NET 項目中安裝 IronXL,請在 Visual Studio 中打開 NuGet 包管理器控制台並執行命令 Install-Package IronXL.Excel。您還可以在 NuGet 包管理器 UI 中搜索 IronXL 並直接安裝它。 如何使用 IronXL 在 C# 中編輯 Excel 文件? 使用 IronXL 你可以通過 WorkBook.Load 載入 Excel 文件,訪問特定的工作表,修改單元格值,並使用 WorkBook 和 WorkSheet 對象提供的方法保存工作簿。 使用IronXL進行Excel文件操作有哪些好處? IronXL 提供了改善的性能、易用性和平台獨立性等優勢。 它不需要安裝 Excel,從而消除了依賴問題,允許無縫集成到 .NET 應用程序中。 我可以在不使用 Microsoft Interop 的情況下自動化 Word 文件任務嗎? 是的,各種第三方庫提供了替代 Microsoft Interop 來自動化 Word 文件任務,提供簡化的 API,並不需要安裝 Microsoft Word。 Jordi Bardia 立即與工程團隊聊天 軟體工程師 Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。 相關文章 更新2026年3月1日 如何使用 IronWord 在 C# 中建立可填寫的表格範本 學習如何使用 IronWord 在 C# 中建立可填寫的表單範本。 閱讀更多 更新2025年9月18日 ASP .NET Core 導入和導出 Word 文件 本指南探討如何使用 IronWord 庫導入現有的 Word 文件,顯示其內容,並從頭開始創建文件 閱讀更多 更新2025年10月11日 VS 2022 程式化創建新 Word 文件(教程) 在今天的教程中,我將簡單解釋如何使用 IronWord 程式化創建 Microsoft Word 文檔,並提供簡單範例。 閱讀更多 如何使用 C# 閱讀 Word 文件如何在 C# 中創建 Word 文檔
更新2025年10月11日 VS 2022 程式化創建新 Word 文件(教程) 在今天的教程中,我將簡單解釋如何使用 IronWord 程式化創建 Microsoft Word 文檔,並提供簡單範例。 閱讀更多