從文件頁面中提取表格
內容
[
隱藏
]介紹
在本教學中,我們將探討如何使用 GroupDocs.Parser for .NET 從文件頁面中擷取表格。 GroupDocs.Parser 是一個功能強大的程式庫,可讓開發人員處理各種文件格式,例如 PDF、DOCX、XLSX 等。透過利用其功能,我們可以有效地從這些文件中提取結構化資料(例如表格),從而使我們能夠以程式設計方式操作和分析資訊。
先決條件
在開始之前,請確保您具備以下條件:
- Visual Studio 安裝在您的電腦上。
- 對 C# 和 .NET 開發有基本了解。
- 用於 .NET 函式庫的 GroupDocs.Parser。您可以從以下位置下載:這裡.
- 存取包含要擷取的表格的範例文件(PDF、DOCX 等)。
導入命名空間
首先,首先在 C# 專案中導入必要的命名空間:
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using GroupDocs.Parser.Data;
using GroupDocs.Parser.Options;
using GroupDocs.Parser.Templates;
第 1 步:建立 Parser 類別的實例
實例化Parser
類別透過提供範例文件的路徑:
using (Parser parser = new Parser("YourSampleFile.pdf"))
{
//您的程式碼在這裡繼續...
}
步驟 2:檢查文件表擷取支持
在繼續之前,請先驗證文件是否支援表提取:
if (!parser.Features.Tables)
{
Console.WriteLine("Document does not support table extraction.");
return;
}
第 3 步:定義表格佈局
定義要從文件中提取的表格的佈局。根據文件的結構指定列寬和行高:
TemplateTableLayout layout = new TemplateTableLayout(
new double[] { 50, 95, 275, 415, 485, 545 }, //列寬
new double[] { 325, 340, 365, 395 }); //行高
步驟 4:設定表提取選項
使用指定佈局建立表格擷取選項:
PageTableAreaOptions options = new PageTableAreaOptions(layout);
第5步:檢索文件資訊
取得有關文件的信息,包括頁數:
IDocumentInfo documentInfo = parser.GetDocumentInfo();
if (documentInfo.PageCount == 0)
{
Console.WriteLine("Document has no pages.");
return;
}
第 6 步:迭代文件頁面
迭代文件的每一頁以提取表格:
for (int pageIndex = 0; pageIndex < documentInfo.PageCount; pageIndex++)
{
Console.WriteLine($"Page {pageIndex + 1}/{documentInfo.PageCount}");
//從目前頁面提取表格
IEnumerable<PageTableArea> tables = parser.GetTables(pageIndex, options);
//迭代提取的表
foreach (PageTableArea table in tables)
{
//迭代表的行
for (int row = 0; row < table.RowCount; row++)
{
//迭代表的列
for (int column = 0; column < table.ColumnCount; column++)
{
//取得表格單元格
PageTableAreaCell cell = table[row, column];
if (cell != null)
{
//列印表格單元格的文字
Console.Write(cell.Text);
Console.Write(" | ");
}
}
Console.WriteLine();
}
Console.WriteLine();
}
}
結論
在本教學中,我們介紹了使用 GroupDocs.Parser for .NET 從文件頁面中提取表格的過程。透過遵循提供的步驟,您可以將表提取功能無縫整合到 .NET 應用程式中,從而實現文件中結構化資料的高效處理和操作。
常見問題解答
GroupDocs.Parser 可以從所有類型的文件中提取表格嗎?
GroupDocs.Parser 支援各種文件格式,例如 PDF、DOCX、XLSX 等,因此能夠從相容的文件類型中提取表格。
GroupDocs.Parser for .NET 適合大規模文件處理嗎?
是的,GroupDocs.Parser 旨在高效處理大型文檔,使其適合處理大量資料集。
GroupDocs.Parser 在表格擷取期間是否保留格式?
是的,GroupDocs.Parser 會在表格提取期間保留格式詳細信息,例如單元格邊框、文字樣式和對齊方式。
我可以根據內容標準提取特定表格嗎?
GroupDocs.Parser 提供了靈活的選項,可根據佈局範本或擷取的內容條件來定位特定的表格。
GroupDocs.Parser 與 .NET Core 相容嗎?
是的,GroupDocs.Parser 與 .NET Framework 和 .NET Core 環境相容。