在生產環境中測試,無水印。
在任何需要的地方都能運行。
獲得 30 天的全功能產品。
在幾分鐘內上手運行。
試用產品期間完全訪問我們的支援工程團隊
微軟創建了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 年)、運行 Classic macOS 的 Apple Macintosh(1985 年)、macOS(2001 年)、Web 瀏覽器(2010 年)、iOS(2014 年)和 Android(2015 年)。 Wine 可以在 Linux 上運行舊版本的 Microsoft Word。
商業版 Word 可作為獨立應用程式許可,也可以作為Microsoft 365的組件,該組件可以以永久許可購買或作為 Microsoft 365 訂閱的一部分。 在本文中,我們將使用 C# 和 Microsoft Interop 程式集操作 Word 文檔,並探討 IronXL 如何幫助我們編輯 Excel 文檔。
建立一個全新的 Visual Studio 專案任務。
設置必要的庫以讀取 Word 文件。
若要操作 Word 文件,請載入現有文件或建立新文件。
編輯文件資料並解析文件。
C# 或 VB.NET 編寫的程式可以使用適用於 Microsoft Word 的 Office Interoperability 來建立或開啟 Word 文件(DOC、DOCX 和 RTF)。 然而,在專案中使用時有很多缺點。
我們將在本文中討論在使用 C# 或 VB.NET 從 Microsoft Office Interop (Word Automation) 時您可能遇到的常見問題。
例如:
在使用 Interop 庫之前,有必要啟動 Visual Studio 並創建一個 .NET 項目。 Visual Studio 與任何版本兼容,但建議使用最新版本。 根據您的需求,您可以開發專案模板或類似 Windows Forms 的應用程式。 在這種情況下,為了簡單起見,我將使用主控台應用程式。
接下來,提供專案的位置和名稱。
使用框架下拉選單,您可以選擇.NET Framework。 此專案將使用 .NET Framework 4.7。 接下來的操作是按下「Create」按鈕。
在應用程式生成解決方案後,您可以通過訪問 Program.cs 文件輸入代碼並構建或運行程序。
現在已經添加了Microsoft.Office.Interop.Word
庫,我們可以測試代碼了。
下一次修復需要安裝Interop庫。 在 NuGet 套件管理器主控台中輸入以下命令以完成此操作:
:InstallCmd: Install-Package Microsoft.Office.Interop.Word
另一種找到「Interop」套件的方法是使用 NuGet 套件管理器。 在所有與 Interop 相關的 NuGet 套件中,我們可以從此清單中選擇所需的套件以下載。
安裝所有必要的庫後,您即可開始編輯 DOCX 文件。
要使用 Microsoft Word,您必須先建立一個 Microsoft.Office.Interop.Word.Application
的實例。 Word文件的傳遞會在這種情況下發生。 下一步是使用我們剛剛創建的 Microsoft.Office.Interop.Word.Application
實例的 Documents
屬性創建新的 Word 文件實例。 如下所示的 C# 代碼片段中,這使我們能夠以程式方式操作 Word 文件。
using System;
using System.Data;
using Microsoft.Office.Interop.Word;
try
{
var WordApp = new Microsoft.Office.Interop.Word.Application();
var WordDoc = WordApp.Documents.Open(@"d:/Demo.docx");
WordDoc.Paragraphs [1].Range.Text = "New text here...";
WordDoc.SaveAs(@"d:/NewDemo.docx");
WordDoc.Close();
WordApp.Quit();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
using System;
using System.Data;
using Microsoft.Office.Interop.Word;
try
{
var WordApp = new Microsoft.Office.Interop.Word.Application();
var WordDoc = WordApp.Documents.Open(@"d:/Demo.docx");
WordDoc.Paragraphs [1].Range.Text = "New text here...";
WordDoc.SaveAs(@"d:/NewDemo.docx");
WordDoc.Close();
WordApp.Quit();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
Imports System
Imports System.Data
Imports Microsoft.Office.Interop.Word
Try
Dim WordApp = New Microsoft.Office.Interop.Word.Application()
Dim WordDoc = WordApp.Documents.Open("d:/Demo.docx")
WordDoc.Paragraphs (1).Range.Text = "New text here..."
WordDoc.SaveAs("d:/NewDemo.docx")
WordDoc.Close()
WordApp.Quit()
Catch ex As Exception
Console.WriteLine(ex.ToString())
End Try
在上述程式碼中,我們能夠在 C# 中編輯 Word 文件。 首先,我們正在為Interop使用的文字處理器創建一個項目對象。 藉由幫助所創建的物件,其具有一個可以讓我們傳遞現有 Word 檔案名稱的開放方法。 它幫助我們將文件轉換為文檔對象。
透過使用文件物件,我們可以獲取與現有 Word 文件相關的所有可用程序。 然後使用段落物件,我們可以獲取 DOCX 文件中所有可用的內容。 使用陣列,我們可以透過將特定段落傳入陣列來替換每一段的文字。 然後,我們可以將它們儲存為新的 MS Word 文件,作為 DOCX 檔案。我們也可以使用 Interop 來建立 Word 文件。
IronXL 是 Microsoft Interop 的替代方案,可用於 .NET 程式中處理 Excel 檔案。 雖然 Microsoft Interop 需要通過 Interop 程式集與 Excel 交互,但 IronXL 提供了一種更簡單、高效且強大的方法,用於在 .NET 環境中以程式方式操作 Excel 文件。
使用 IronXL 代替 Microsoft Interop 有以下幾個優點,如:
平台獨立性:與可能更密切關聯於特定 Microsoft Office 版本的 Microsoft Interop 不同,IronXL 提供更大的靈活性和便捷性,能夠在各種環境和平台上部署。
對於必須以程式方式操作 Excel 文件的 .NET 開發者而言,IronXL 經常是一個更好的選擇,因為它易於使用、速度快,且對第三方軟體安裝的依賴較少。 在 IronXL 和 Microsoft Interop 之間做出決定,可能會受到專案細節、現有基礎設施,以及使用者對每個函式庫的熟悉程度影響。
在選擇這些選項時,請始終考慮應用程式的需求。 查看此連結以了解更多有關IronXL程式庫的資訊。
由於即將推出的補丁需要 IronXL 庫,請安裝它。 要完成此操作,打開 NuGet 套件管理器控制台並輸入以下命令:
Install-Package IronWord
透過 NuGet 套件管理器搜尋套件 "IronXL" 是另一種選擇。我們可以從這個所有與 IronXL 相關的 NuGet 套件列表中選擇我們需要下載的套件。
只需幾行程式碼即可將資料匯出至 .XLSX 或 .XLS 格式。 以下的原始碼示例展示了如何將資料從 Excel 文件匯出到簡單的表格格式中:
var workbook = IronXL.WorkBook.LoadExcel("Demo file.xlsx");
WorkSheet ws = workbook.GetWorkSheet("Sheet1");
string address_val = ws ["A1"].ToString();
console.writeline(address_val);
ws ["A2"].Value = "Hello World";
workbook.SaveAs("export.xlsx");
//or
workbook.SaveAs("export.xls");
//or
workbook.WorkSheets [0].SaveAs("export.xls");
var workbook = IronXL.WorkBook.LoadExcel("Demo file.xlsx");
WorkSheet ws = workbook.GetWorkSheet("Sheet1");
string address_val = ws ["A1"].ToString();
console.writeline(address_val);
ws ["A2"].Value = "Hello World";
workbook.SaveAs("export.xlsx");
//or
workbook.SaveAs("export.xls");
//or
workbook.WorkSheets [0].SaveAs("export.xls");
Dim workbook = IronXL.WorkBook.LoadExcel("Demo file.xlsx")
Dim ws As WorkSheet = workbook.GetWorkSheet("Sheet1")
Dim address_val As String = ws ("A1").ToString()
console.writeline(address_val)
ws ("A2").Value = "Hello World"
workbook.SaveAs("export.xlsx")
'or
workbook.SaveAs("export.xls")
'or
workbook.WorkSheets (0).SaveAs("export.xls")
先前的範例通過調用 LoadExcel
函數來加載已存在的 Excel 文件,此函數需要提供文件路徑和名稱作為參數。 將文件匯入Workbook
對象現在已經完成。 然後利用GetWorkSheet
載入 Excel 工作表,這使我們可以通過工作表名稱載入工作表。 然後使用 Excel 位址讀取該值。 要了解更多關於閱讀 Excel 文件的資訊,請點擊這裡。
我們可以使用相同的 Excel 網址來更改 Excel 表格中的值。 Excel 文件可以通过 'Workbook' 对象提供的 SaveAs
函数保存为 XLSX 或 XLS 文件。 使用此過程,整個文件將以選擇的格式保存。
此外,我們可以透過使用其索引值或參照名稱來選擇特定的 Excel 工作表。 接下來,我們可以使用SaveAs
選項將Excel試算表中的數據匯出到不同的檔案。 點擊這個鏈接了解更多關於格式化和導出 Excel 文件的信息。
對於 Excel 而言,IronXL 是最受歡迎的附加元件之一。 它不依赖于任何其他外部库。 不需要安裝 Microsoft Excel,因為它是自包含的。 它通過多個渠道運作。 這與Interop庫形成對比,後者必須使用額外的庫來解析文件以編輯Word文件。
IronXL 是一個適用於任何使用 Microsoft Excel 文件的程式開發過程的完整解決方案。 計算、排序字串或數字、修剪、添加、查找和替換、合併和拆分以及檔案儲存只是眾多可用操作中的一部分。 不僅可以驗證試算表數據,還可以構建新形式的單元格數據。 它有助於讀取和寫入文件以及處理 Excel 數據。
IronXL剛推出時,售價為$749。 或者,客戶可以選擇支付一年訂閱費以獲得軟體更新和支援。 IronXL 提供防止未經授權重新分發的安全性,但需支付費用。 前往 IronXL 許可證頁面。 如需了解更多關於 Iron Software 產品的信息,請點擊此處。