
Trích xuất bảng từ các tệp PDF có thể là một tác vụ phổ biến khi xử lý trích xuất hoặc phân tích dữ liệu. Cho dù bạn đang cố gắng truy xuất bảng để xử lý hay xuất chúng để sử dụng thêm, việc tự động hóa quy trình này có thể tiết kiệm thời gian và công sức. Trong bài đăng trên blog này, chúng tôi sẽ chỉ cho bạn cách trích xuất bảng từ tệp PDF trong C# hoặc xuất dữ liệu đã trích xuất sang tệp CSV.
Chúng tôi sẽ đề cập đến các phần sau trong bài viết này:
- Tại sao phải trích xuất bảng từ PDF?
- Trích xuất bảng PDF - Cấu hình API C#
- Trích xuất bảng từ PDF trong C#
- Chuyển đổi dữ liệu bảng từ PDF sang CSV trong C#
Tại sao phải trích xuất bảng từ PDF?
Tệp PDF được sử dụng rộng rãi để chia sẻ thông tin ở định dạng di động. Tuy nhiên, việc trích xuất dữ liệu có cấu trúc như bảng có thể là một thách thức vì tệp PDF không được thiết kế để dễ dàng chỉnh sửa hoặc thao tác. Bằng cách trích xuất dữ liệu bảng theo chương trình trong C#, bạn có thể làm cho dữ liệu dễ truy cập hơn, cho phép bạn phân tích, sửa đổi hoặc lưu trữ dữ liệu ở các định dạng khác nhau như CSV, được sử dụng rộng rãi để trao đổi dữ liệu giữa các ứng dụng khác nhau.
Trích xuất bảng PDF - Cấu hình API C#
Bạn có thể trích xuất dữ liệu từ các bảng PDF bằng cách cấu hình Conholdate.Total cho .NET bằng lệnh cài đặt NuGet bên dưới:
PM> NuGet\Install-Package Conholdate.Total
Trích xuất bảng từ PDF trong C#
Trong phần này, chúng tôi sẽ hướng dẫn bạn cách trích xuất bảng từ tài liệu PDF bằng C#.
- Tải tài liệu PDF: Mã bắt đầu bằng cách tải tệp PDF vào đối tượng lớp Tài liệu.
- Table Absorber: Lớp TableAbsorber được sử dụng để phát hiện và hấp thụ các bảng trên mỗi trang của PDF.
- Trích xuất dữ liệu bảng: Mã lặp qua từng bảng tìm thấy, trích xuất nội dung của từng ô trong bảng và in theo định dạng có cấu trúc.
Phương pháp này cung cấp một cách hiệu quả để truy cập dữ liệu dạng bảng từ các tài liệu PDF, cho phép bạn làm việc với thông tin theo chương trình. Đoạn mã dưới đây minh họa việc trích xuất bảng trong C#:
// Tải tài liệu PDF nguồn
var filePath = "input.pdf";
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(filePath);
foreach (var page in pdfDocument.Pages)
{
Aspose.Pdf.Text.TableAbsorber absorber = new Aspose.Pdf.Text.TableAbsorber();
absorber.Visit(page);
foreach (AbsorbedTable table in absorber.TableList)
{
Console.WriteLine("Table");
foreach (AbsorbedRow row in table.RowList)
{
foreach (AbsorbedCell cell in row.CellList)
{
foreach (TextFragment fragment in cell.TextFragments)
{
var sb = new StringBuilder();
foreach (TextSegment seg in fragment.Segments)
sb.Append(seg.Text);
Console.Write("{sb.ToString()}|");
}
}
Console.WriteLine();
}
}
}
Chuyển đổi dữ liệu bảng PDF sang CSV trong C#
Sau khi bạn đã trích xuất dữ liệu bảng từ PDF, bạn có thể muốn lưu nó ở định dạng dễ truy cập hơn như CSV. CSV (Giá trị phân cách bằng dấu phẩy) được hỗ trợ rộng rãi bởi các ứng dụng như Microsoft Excel, Google Sheets và nhiều hệ thống xử lý dữ liệu. Trong phần này, chúng tôi sẽ chuyển đổi dữ liệu bảng PDF sang CSV trong C#:
Các bước sau đây cho biết cách xuất dữ liệu từ bảng PDF sang định dạng CSV trong C#:
- Tải tài liệu PDF: Tài liệu PDF được tải vào đối tượng Tài liệu như trước.
- ExcelSaveOptions: Một phiên bản của ExcelSaveOptions được tạo với định dạng được đặt thành CSV. Điều này đảm bảo rằng dữ liệu bảng từ PDF được xuất trực tiếp dưới dạng tệp CSV.
- Lưu tệp CSV: Phương thức Save được gọi để xuất dữ liệu bảng PDF sang tệp .csv.
Mẫu mã bên dưới cho thấy cách chuyển đổi bảng PDF sang định dạng CSV trong C#:
// Tải tài liệu PDF
Document pdfDocument = new Document("input.pdf");
// Khởi tạo đối tượng Tùy chọn ExcelSave
ExcelSaveOptions excelSave = new ExcelSaveOptions { Format = ExcelSaveOptions.ExcelFormat.CSV };
// Lưu đầu ra ở định dạng XLS
pdfDocument.Save("PDFToXLS_out.xlsx", excelSave);
Nhận giấy phép miễn phí
Bạn có thể nhận giấy phép tạm thời miễn phí để kiểm tra các tính năng khác nhau của API mà không có bất kỳ giới hạn đánh giá nào.
Tóm lại
Trích xuất bảng từ PDF và xuất dữ liệu sang định dạng CSV trong C# có thể được thực hiện đơn giản và hiệu quả trong C#. Khả năng tự động trích xuất bảng giúp ích trong các tình huống mà bạn cần phân tích hoặc chia sẻ dữ liệu dạng bảng từ PDF ở định dạng linh hoạt hơn như CSV. Bằng cách làm theo các bước trong bài đăng trên blog này, bạn có thể dễ dàng truy xuất và lưu trữ dữ liệu bảng từ các tệp PDF của mình. Quy trình này đặc biệt hữu ích trong phân tích dữ liệu, báo cáo hoặc bất kỳ tác vụ nào yêu cầu dữ liệu có cấu trúc từ các tài liệu PDF cứng nhắc. Trong trường hợp có bất kỳ thắc mắc nào, vui lòng liên hệ với chúng tôi tại diễn đàn.