使用IRONWORD

如何使用 C# 讀取 Word 檔案

里根普恩
里根普恩
2024年8月15日
分享:

在當今時代,Microsoft Word 文件已成為辦公工作以及專業和個人溝通的同義詞。 因此,對於希望在應用程式中自動化任務以向用戶顯示的開發人員來說,程式化操作 Word 文件是至關重要的。 雖然有許多可用的函式庫,但不是所有的都同樣強大。 然而,其中一個脫穎而出的競爭者是IronWordIronWord 是一個可靠且強大的 C# Word DOCX 庫,使用簡單且易於理解,簡化了處理 Word 文件的過程。

本文將探討我們如何快速利用IronWord閱讀 Word 文件,並提供簡短範例。

如何使用 C# 讀取 Word 文件

  1. 在 Visual Studio 中建立主控台應用程式

  2. 安裝 IronWord C# DOCX 庫

  3. 使用WordDocument類創建一個新的 Word 文件

  4. 將文字添加到 Word 文件中

  5. 使用段落類別循環遍歷每個段落

  6. 顯示內容

IronWord:C# DOCX 庫

IronWord:C# DOCX 庫

IronWord 是一個靈活且可擴展的庫,具有簡單易用的 API,可消除將 Word 文件整合到應用程序中的麻煩。 無論您是想將簡單的文本文檔添加並集成到應用程式中,還是創建複雜的表格和報告以展示給使用者,IronWord都能滿足您的需求。

以下是其最顯著的功能。

  1. 文件操作:IronWord 讓開發人員輕鬆操作 Word 文件。 無論用戶想要插入文本段落或更複雜的結構如表格和圖像,IronWord 都能做到。

  2. 跨平台支援與相容性:IronWord 設計靈活,可支援多平台開發者。 它支持各種 .NET Core(8、7、6、5 和 3.1+)、.NET Standard(2.0+)、.NET Framework(4.6.2+),甚至 Azure。 此外,開發人員可以在不同的平台和系統上使用IronWord,包括但不限於Windows、Linux、macOS和Android。 它涵蓋了最常見的平台,並允許開發人員快速構建跨平台應用程式。

  3. 不需要依賴 Microsoft Office:在 .Net 應用程式中整合 Word 文件時,一個常見的問題是像 Interop 這樣的流行函式庫需要安裝授權的 Microsoft Office。不過,IronWord 獨立於這個限制,解決了這個問題。 開發人員可以充分利用 Word 文件的功能,而不受限於 Microsoft Word 的授權和安裝。

  4. 格式選項:IronWord 提供廣泛的格式和樣式支持,允許開發人員使文檔獨具一格。 開發人員可以將字體應用於他們的文本、顏色、對齊方式和其他複雜的格式化,例如表格樣式

  5. 易於使用和廣泛的支持: IronWord 不僅提供易於理解的 API 和簡單的方法調用,還提供擴展 API 參考和代碼示例,以幫助開發者確定最優化的使用方式。

在 Visual Studio 中創建一個新的控制台專案

在我們深入研究示例之前,讓我們先在Visual Studio中創建一個空白的主控台專案。

創建新專案時點擊主控台應用程式

然後,我們為專案提供一個名稱和儲存位置。

指定專案的名稱和位置路徑。

接下來,選擇您將使用的 .NET 框架。 在此範例中,我將使用 .NET 8.0。

選擇所需的 .NET 框架,然後單擊創建。

在創建並設置新的控制台專案後,讓我們安裝 C# 詞庫,IronWord

安裝 IronWord

有兩種方法可以安裝IronWord。

1. 通過 NuGet 套件管理器安裝

要透過 NuGet 套件管理器安裝,請點擊工具,然後選擇`管理 NuGet 解決方案。` 然後我們在搜尋欄中搜尋 IronWord 並安裝 `IronWord。`

在 NuGet 套件管理器的搜尋欄位中搜尋 IronWord,使用解決方案的管理 NuGet 套件功能安裝 IronWord,然後選擇專案並點擊安裝按鈕。

2. 使用 NuGet 套件管理器控制台進行安裝

另一種方法是通過 NuGet 程式包管理控制台安裝。 要這樣做,請在控制台中運行以下命令:

Install-Package IronWord
Install-Package IronWord
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronWord
$vbLabelText   $csharpLabel

授權金鑰

請注意,IronWord 需要授權金鑰才能運作; 您可以在免費試用中獲得一個。

獲取試用金鑰後,請確保在您的專案中設定此變數。

//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

在 C# 中閱讀 Word 文件

在安裝了必要條件後,我們將在以下代碼中演示使用 IronWord 讀取 Microsoft Word 文件的簡單性。

首先,我們導入以下命名空間。 使用 IronWord,我們創建一個新文件並添加範例文本。 然後,我們使用`WordDocument`物件來存取段落和文字,以列印出 Word 文件中的文字。

using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create textrun
Text textRunExample = new Text("Sample text");

Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document
WordDocument doc = new WordDocument(paragraphExample);

// Export docx
doc.SaveAs("document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create textrun
Text textRunExample = new Text("Sample text");

Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document
WordDocument doc = new WordDocument(paragraphExample);

// Export docx
doc.SaveAs("document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

讓我們探索從上述程式碼中讀取 Word 文件的方法和參數。

  1. 我們首先創建一個文字物件並將字串“Sample Text”賦予它。

  2. 然後,我們實例化一個段落對象,並將“textRunExample”添加到其中。

  3. 我們還實例化了一個WordDocument對象,命名為WordDocument doc,並將paragraphExample傳遞給它,以建立一個包含該段落的新 Word 文檔。

  4. 程式碼將 Word 文件儲存為「document.docx」以供日後使用。

  5. 要訪問我們剛剛建立的 Word 文件中的段落,我們訪問 WordDocument 對象的 "Paragraphs" 屬性。 "Paragraphs" 屬性是一個列表。因此,我們調用 foreach 迴圈來遍歷它。

  6. 若要取得段落內的文字,我們需存取Paragraphs的「Texts」屬性。 這也會返回一個文本列表。

  7. 最後,我們將文本賦值給名為 "content" 的字串變數,並將其打印到控制台。

控制台輸出

控制台輸出顯示從 Word 文檔中讀取的文本。

在 C# 中讀取現有的 Word 文件

在上個例子中,我們以程式方式創建了一個新的 Word 文件並讀取其內容。 我們可以通過進行一些程式碼更改來遵循類似的步驟來讀取現有的 Word 文件。

輸入文件

輸入範例:長篇 Word 文件

using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Export docx
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Export docx
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

這兩個範例之間的主要差異在於傳遞給WordDocument物件的參數。 我們不創建新文件,而是將其載入現有的 Word 文件中。 其餘部分與其他示例相同。

控制台輸出

控制台輸出

結論

IronWord 授權資訊

在這些範例中,我們展示了使用IronWord庫以程式化方式在C#中操作和讀取Word文件是多麼簡單。 IronWord 函式庫的靈活性和擴展性使其成為一個非常有價值的工具,允許開發人員在實際案例中使用 IronWord,例如填寫模板、生成報告和批量處理文件。 了解 Word 如何與應用程式整合非常有價值,因為這讓開發者對他們的問題有更多的解決方案。

此外,開發人員可以在購買之前測試IronWord的豐富功能,因為它提供免費試用許可。 除了易於使用外,IronWord 還附有完整的文件和 24/5 的支援,為開發人員提供幫助,減輕開發人員在生產過程中可能面臨的持續挫折。 我們還提供各種教程和一系列代碼範例供您參考,幫助您開始使用IronWord

在使用試用授權測試IronWord的各個方面後,您可以購買我們的Lite開發者授權,價格從$599起,並可從Lite升級到Professional。 請參閱我們的授權頁面以獲取更多信息。

里根普恩
軟體工程師
Regan 畢業於雷丁大學,擁有電子工程學士學位。在加入 Iron Software 之前,他的工作角色讓他專注於單一任務;而他在 Iron Software 工作中最喜歡的是他所能承擔的工作範圍,無論是增加銷售價值、技術支持、產品開發或市場營銷。他喜歡了解開發人員如何使用 Iron Software 庫,並利用這些知識不斷改進文檔和開發產品。
< 上一頁
3 個 C# Word 函式庫(給開發者的更新列表)
下一個 >
如何使用C#操作Word文件

準備開始了嗎? 版本: 2025.4 剛剛發布

查看許可證 >