跳過到頁腳內容
使用 IRONWORD

如何在 C# 中從 Word 擷取文字

通常,文件處理應用程式、資料擷取或文字分析的主要任務是從 Word 文件檔案中提取文字。 在開發 C# 應用程式時,開發人員使用 IronWord 等程式庫來協助處理 .docx 格式的檔案並存取文件實例中的文字。 使用這些函式庫有助於自動從Word 文件中檢索內容,從而實現報告產生、資料探勘,甚至文件管理系統。

使用 IronWord 等函式庫,可以從任何 Word 文件實例中提取文字; 只需載入文件物件、開啟段落或章節,然後檢索所需的文本,同時保持其原始佈局即可。 這種功能在法律、醫療保健和金融領域將具有非凡的實用價值,因為在這些領域,文件處理通常是工作流程中不可或缺的一部分。 毫無疑問,C# 被用於開發極具可擴展性和高效性的應用程序,這些應用程式可以從 Word 文件中提取文字。 開發人員可以將其與更複雜的系統或應用程式結合使用。

如何在 C# 中從 Word 文件中提取文本

  1. 透過 NuGet 在您的 C# 專案中安裝 IronWord 程式庫。
  2. 在 C# 檔案的頂部新增using IronWord;以從 Word 中擷取文字。
  3. 設定您的許可證密鑰。
  4. 載入現有的 Word 文件。
  5. 使用Paragraphs屬性存取段落。
  6. 使用foreach迴圈遍歷段落和文字元素。
  7. 使用Console提取和顯示文字。

IronWord是什麼?

IronWord是一款功能強大的文字擷取工具,可確保輕鬆取得各種類型的文件,例如 PDF、Word 和 TXT 文件。 它以精確和快速的方式進行設計,可以快速提取所需的文字(結構化或非結構化),同時保留文件其餘部分的原始格式。 IronWord 也可用於提供文件分析、資料擷取和內容自動索引。

如何在 C# 中從 Word 文件中提取文字:圖 1 - IronWord

該工具支援幾乎所有可用的文件類型,以確保與應用程式的順利集成,因此非常適合業務自動化和大批量文件處理。 以這種方式設計的庫具有可擴展性,可以輕鬆處理大量文檔,這對於從事批量資料提取的企業來說是一項非常重要的優勢。

IronWord 也完全相容於 C# 和其他程式語言,滿足希望簡化文件工作流程的開發人員和組織的需求。

IronWord 的特點

支援多種文件格式

IronWord 接受多種文件格式的文件,包括:

  • PDF:它可以解釋普通文字 PDF、嵌入字體的 PDF 以及基於向量的 PDF 中的文字。
  • Microsoft Word 文件 (DOCX):它可以輕鬆讀取 Word 文件中的文本,同時保持文件結構和格式不變。 *文字檔案 (TXT):此外,IronWord 還處理純文字文件,從簡單文字中提取和處理文字。

精確文字擷取

IronWord 提取引擎能夠熟練地提取文字內容,即使文字內容隱藏在具有複雜頁面佈局、嵌入字體或圖片和表格等混合內容的複雜文件中。 圖書館保存了:

*文字格式:*套用於文字的樣式,例如粗體、斜體、底線和其他樣式。 文件層級:**標題、段落和列表,以保持組織性和可讀性。

處理結構化和非結構化數據

IronWord 可以處理結構化資料和非結構化資料。 它可以提取:

*結構化資料:*具有可預測格式模式的文檔,例如表格和合約。 非結構化資料:**文字版面不可預測的文檔,例如報告或文章。

由於它能夠處理各種各樣的內容,因此在資料探勘、資訊檢索和分類等任務中已被證明非常有用。

大容量可擴充性

IronWord 旨在有效處理大量文檔,為企業應用程式提供強大的可擴充性。 範例包括

*文件批次處理:*一次處理多個文件。 處理大型檔案:**即使文件體積很大,效能也不會下降。

與程式語言的無縫集成

IronWord 透過易於使用的 API 可無縫整合到開發環境(尤其是 Python 開發環境)中。這使得開發人員能夠:

*將 IronWord 匯入 Python 應用程式:*直接在 Python 腳本中使用 IronWord 函數。 跨語言互通性:**除了 Python 之外,IronWord 還可以有效地用於其他語言,從而促進技術堆疊的互通性。

這種易於整合的特性使開發人員能夠專注於功能,而不是基礎設施。

高性能和速度

IronWord 針對效能進行了最佳化,即使從大型文件中也能快速提取文本,這對於需要快速執行的即時應用程式至關重要。 圖書館提供:

*多執行緒支援:*增強並發提取過程。 記憶體佔用小:**處理過程中系統資源利用率高,可擴充性強,能夠處理大型資料集。

可選的 OCR 支持

對於包含圖像的文檔,IronWord 可以與 OCR 技術結合使用,以實現以下功能:

*處理掃描文件:*從影像、掃描的 PDF 或其他基於影像的格式中提取文字。 多語言支援:**識別並提取支援的 OCR 語言的文字。

元資料保存

除了提取文字之外,IronWord 還會保留文件中的元數據,例如:

*文件版本控制和合規資訊:*可用於合規或存檔目的。 文件管理系統:**元資料與內容同等重要。

在 Visual Studio 中建立新專案

若要啟動 Visual Studio 應用程序,請從"檔案"功能表中選擇"檔案",然後選擇"新專案",最後選擇"控制台應用程式"。

如何在 C# 中從 Word 文件中提取文字:圖 2 - 控制台應用程式

選擇 .NET 項目的位置後,在文字欄位中輸入項目名稱,然後按一下"建立"按鈕並選擇所需的 .NET Framework。

如何在 C# 中從 Word 文件中提取文字:圖 3 - 專案配置

Visual Studio 專案結構會根據所選應用程式而有所不同。 若要實現或執行應用程式程式碼,請造訪 Program.cs 文件,該文件適用於控制台、視窗或線上應用程式。

如何在 C# 中從 Word 文件中提取文字:圖 4 - Target Framework

輸入程式碼後即可測試該程式庫。

安裝 IronWord 庫

從 Visual Studio 工具功能表中,選擇 NuGet 套件管理器。 若要存取軟體包管理控制台,請導覽至軟體包管理器介面。

Install-Package IronWord

下載並安裝後,該軟體包即可用於正在進行的專案中的文字擷取。

如何在 C# 中從 Word 文件中提取文字:圖 5 - 安裝 IronWord

套件管理器方法提供了另一種選擇,允許透過 Visual Studio 的 NuGet 套件管理器直接安裝到解決方案中。 下圖展示如何存取軟體套件管理器。

如何在 C# 中從 Word 文件中提取文字:圖 6 - NuGet 套件管理器

使用 NuGet 網站上的搜尋欄位尋找軟體包。 使用軟體套件管理器搜尋"IronWord",如下圖所示。

如何在 C# 中從 Word 文件中提取文字:圖 7 - 搜尋 IronWord

附圖顯示了相關的搜尋結果。 請進行以下調整,以便在您的電腦上安裝軟體。

從 Word 文件中提取文本

若要使用 IronWord 從文件中提取文本,請按照以下步驟操作。 下面的範例程式碼示範如何使用 C# 中的 IronWord 程式庫從 Word 文件 (.docx) 中擷取文字。

// Include necessary libraries
using IronWord;

// Set the license key for IronWord
IronWord.License.LicenseKey = "License key here";

// Load the Word document
var docx1 = new WordDocument("D:\\C# Projects\\ConsoleApp\\ConsoleApp\\File\\existing.docx");

// Access the collection of paragraphs in the document
var paragraphObj = docx1.Paragraphs;

// Loop through each paragraph and its text elements
for (int i = 0; i < paragraphObj.Count; i++)
{
    for (int j = 0; j < paragraphObj[i].Texts.Count; j++)
    {
        // Print each text element to the console
        Console.WriteLine(paragraphObj[i].Texts[j].Text.ToString());
    }
}

// Wait for user input before closing the console
Console.ReadKey();
// Include necessary libraries
using IronWord;

// Set the license key for IronWord
IronWord.License.LicenseKey = "License key here";

// Load the Word document
var docx1 = new WordDocument("D:\\C# Projects\\ConsoleApp\\ConsoleApp\\File\\existing.docx");

// Access the collection of paragraphs in the document
var paragraphObj = docx1.Paragraphs;

// Loop through each paragraph and its text elements
for (int i = 0; i < paragraphObj.Count; i++)
{
    for (int j = 0; j < paragraphObj[i].Texts.Count; j++)
    {
        // Print each text element to the console
        Console.WriteLine(paragraphObj[i].Texts[j].Text.ToString());
    }
}

// Wait for user input before closing the console
Console.ReadKey();
' Include necessary libraries
Imports IronWord

' Set the license key for IronWord
IronWord.License.LicenseKey = "License key here"

' Load the Word document
Dim docx1 = New WordDocument("D:\C# Projects\ConsoleApp\ConsoleApp\File\existing.docx")

' Access the collection of paragraphs in the document
Dim paragraphObj = docx1.Paragraphs

' Loop through each paragraph and its text elements
For i As Integer = 0 To paragraphObj.Count - 1
	Dim j As Integer = 0
	Do While j < paragraphObj(i).Texts.Count
		' Print each text element to the console
		Console.WriteLine(paragraphObj(i).Texts(j).Text.ToString())
		j += 1
	Loop
Next i

' Wait for user input before closing the console
Console.ReadKey()
$vbLabelText   $csharpLabel

程式碼初始化 IronWord 的授權金鑰,並從指定路徑載入 .docx 文檔,建立一個 WordDocument 物件。 文件載入完成後,它會透過Paragraphs屬性存取所有段落。

如何在 C# 中從 Word 文件中提取文字:圖 8 - Word 文件範例

巢狀循環遍歷段落及其文字元素。 外層循環遍歷每個段落,而內層循環處理每個段落的文本元素。 文字元素在轉換為字串後會列印到控制台。

如何在 C# 中從 Word 文件中提取文字:圖 9 - 控制台輸出

Console.ReadKey()會暫停程式執行,允許顯示輸出,直到使用者輸入後才會關閉應用程式視窗。 這種方法可以有順序地提取和列印 Word 文件內容。

結論

IronWord 是一款功能全面、高效的文字擷取工具,適用於各種文件格式,尤其適用於 Word 文件。 它用戶友好的 API 和結構化文字提取功能使其成為開發人員尋求自動文件內容檢索的可靠解決方案。 該工具在處理複雜文件時能夠保持格式,對於法律、企業級內容管理和其他應用來說非常有價值。 實施 IronWord 可以增強文件分析、資料擷取和處理任務,提高處理大量文字時的效率和準確性。

IronWord 的起價為 599 美元。用戶可以選擇一次性支付年費,即可獲得技術支援和軟體更新服務。 IronWord會產生費用,因此無法免費發放。 有關具體定價詳情,請參閱 IronWord 的授權頁面。 請造訪產品頁面,以了解Iron Software的其他產品。

常見問題解答

如何使用 C# 從 Word 文件中提取文字?

您可以透過 NuGet 安裝 IronWord 函式庫,在 C# 檔案中加入 using IronWord;,使用授權金鑰初始化函式庫,載入 Word 文件,並透過段落循環來擷取和顯示文字,即可使用 C# 從 Word 文件擷取文字。

IronWord 支援的文字擷取文件格式有哪些?

IronWord 支援從各種文件格式中擷取文字,包括 Microsoft Word 檔案 (DOCX)、PDF 檔案和純文字檔案 (TXT)。

IronWord 如何確保從 Word 文件中準確擷取文字?

IronWord 可保持文字的原始排版與格式,提供從 Word 文件擷取文字的高精準度。它同時支援結構化和非結構化的資料,是產生報表和管理文件的理想選擇。

IronWord 可以與 C# 以外的程式語言整合嗎?

是的,IronWord 的設計可與其他程式語言 (如 Python) 無縫整合,增強跨語言互通性,讓開發人員可在各種環境中使用。

IronWord 是否支援從掃描文件的影像中提取文字?

IronWord 可與 OCR 技術同時使用,以處理掃描的文件,允許從影像中萃取文字,並支援多種語言,增強其在文件處理任務上的通用性。

適用於 C# 開發人員的 IronWord 有哪些主要功能?

IronWord 提供的功能包括精確的文字擷取、支援多種文件格式、可擴充性、支援多執行緒、可選的影像 OCR,以及與其他程式語言的無縫整合,使其能有效率地進行文件分析與資料擷取。

如何在 C# 專案中安裝 IronWord?

若要在 C# 專案中安裝 IronWord,請使用 Visual Studio 中的 NuGet Package Manager。搜尋「IronWord」並將套件新增至專案中,即可開始從 Word 文件中萃取文字。

使用 IronWord 的定價模式為何?

IronWord 的定價為每年一次性訂閱費用 599 美元起,其中包含技術支援與軟體更新的使用權,可確保您擁有最新的功能與修正。

IronWord 如何處理大量文件的文字擷取?

IronWord 已針對效能進行最佳化,具備多執行緒支援等功能,可有效處理大量文件並進行擴充,適合企業級應用程式使用。

IronWord 為法律或醫療保健等產業的文件處理提供哪些優點?

IronWord 可在保持原始格式的前提下,支援從各種格式中提取文字,從而提升文件處理效率。其可擴充性和效能最佳化使其非常適合法律和醫療保健等對文件管理極為重要的產業。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担产品测测试,产品开发和研究的责任时,Jordi 为持续的产品改进增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。