Trích Xuất Văn Bản Từ Tài Liệu MS Word Trong C#

Tài liệu Microsoft Word là một phần không thể thiếu để tạo ra và chia sẻ nội dung văn bản. Nếu bạn đang phát triển các ứng dụng C# tương tác với tài liệu Word, bạn có thể cần trích xuất văn bản từ tài liệu Word bằng C# trong ASP.NET trong khi đảm bảo rằng định dạng được bảo tồn. Dù bạn đang phân tích văn bản, trích xuất các phần cụ thể, hay kết hợp nội dung vào một tài liệu duy nhất, hướng dẫn này sẽ chỉ cho bạn cách trích xuất văn bản từ tài liệu Word một cách hiệu quả bằng thư viện C# tốt nhất cho việc trích xuất văn bản tài liệu Word.

Mục Lục

Thư Viện C# Để Trích Xuất Văn Bản Từ Tài Liệu Word

Aspose.Words for .NET là một thư viện đầy đủ tính năng, dễ sử dụng được thiết kế để làm việc với tài liệu Word. Nó cung cấp một bộ chức năng toàn diện, bao gồm trích xuất văn bản tài liệu Word .NET, tạo tài liệu, thao tác và chuyển đổi. Aspose.Words for .NET là một công cụ vô giá cho các nhà phát triển đang tìm kiếm trích xuất văn bản Word C# hiệu quả.

Bạn có thể tải xuống DLL hoặc cài đặt thư viện trực tiếp từ NuGet bằng cách sử dụng bảng điều khiển quản lý gói:

PM> Install-Package Aspose.Words

Hiểu Về Việc Trích Xuất Văn Bản Trong Tài Liệu Word

Một tài liệu MS Word bao gồm nhiều yếu tố, chẳng hạn như đoạn văn, bảng và hình ảnh. Do đó, yêu cầu về việc trích xuất văn bản có thể khác nhau tùy thuộc vào tình huống. Ví dụ, bạn có thể cần trích xuất văn bản từ một tài liệu Word quét bằng C# hoặc trích xuất văn bản từ một tệp Word bằng C# .NET. Mỗi yếu tố trong tài liệu Word được đại diện dưới dạng một nút, và bạn sẽ tương tác với nó trong quá trình trích xuất. Hãy cùng khám phá cách trích xuất văn bản từ tài liệu Word trong khi xử lý định dạng văn bản trong quá trình trích xuất văn bản bằng C# một cách hiệu quả.

Trích Xuất Văn Bản Từ Một Tài Liệu Word

Trong phần này, chúng ta sẽ triển khai một bộ trích xuất văn bản C# cho tài liệu Word. Quy trình trích xuất văn bản bao gồm:

  1. Định nghĩa các nút để bao gồm trong quá trình trích xuất văn bản.
  2. Trích xuất nội dung giữa các nút đã chỉ định (bao gồm hoặc không bao gồm các nút bắt đầu và kết thúc).
  3. Nhân bản các nút đã trích xuất để tạo một tài liệu Word mới chứa nội dung đã trích xuất.

Hãy tạo một phương thức có tên ExtractContent, sẽ nhận các nút và các tham số khác cho việc trích xuất văn bản. Phương thức này sẽ phân tích tài liệu và nhân bản các nút. Dưới đây là các tham số mà chúng ta sẽ truyền vào phương thức:

  1. StartNodeEndNode đóng vai trò là điểm bắt đầu và kết thúc cho việc trích xuất nội dung. Chúng có thể là các nút cấp khối (ví dụ: Paragraph, Table) hoặc các nút cấp inline (ví dụ: Run, FieldStart, BookmarkStart, v.v.).
    • Đối với các trường, hãy truyền đối tượng FieldStart tương ứng.
    • Đối với các bookmark, sử dụng các nút BookmarkStartBookmarkEnd.
    • Đối với các bình luận, sử dụng các nút CommentRangeStartCommentRangeEnd.
  2. IsInclusive xác định liệu các dấu hiệu có được bao gồm trong việc trích xuất hay không. Nếu được đặt thành false và các nút giống nhau hoặc liên tiếp được truyền, một danh sách rỗng sẽ được trả về.

Việc triển khai hoàn chỉnh của phương thức ExtractContent, chính xác trích xuất văn bản từ các tài liệu Word được bảo vệ trong C#, như sau:

Ngoài ra, một số phương thức trợ giúp là cần thiết cho phương thức ExtractContent để hỗ trợ hoạt động trích xuất văn bản:

Giờ đây, chúng ta đã sẵn sàng để sử dụng những phương thức này và trích xuất văn bản từ tài liệu Word bằng C#.

Trích Xuất Văn Bản Giữa Các Đoạn Văn Của Một Tài Liệu Word

Để trích xuất nội dung giữa hai đoạn văn trong một tài liệu DOCX, hãy làm theo các bước sau:

  1. Tải tài liệu Word bằng cách sử dụng lớp Document.
  2. Tham chiếu đến các đoạn bắt đầu và kết thúc bằng cách sử dụng phương thức Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean).
  3. Gọi phương thức ExtractContent(startPara, endPara, true) để trích xuất các nút vào một đối tượng.
  4. Sử dụng phương thức trợ giúp GenerateDocument(Document, extractedNodes) để tạo một tài liệu chứa nội dung đã trích xuất.
  5. Cuối cùng, lưu tài liệu đã trả về bằng phương thức Document.Save(string).

Dưới đây là một mẫu mã minh họa cách trích xuất văn bản từ các tệp Word lớn bằng cách trích xuất nội dung giữa đoạn thứ 7 và đoạn thứ 11:

Trích Xuất Văn Bản Giữa Các Loại Nút Khác Nhau

Bạn cũng có thể trích xuất nội dung giữa các loại nút khác nhau. Ví dụ, hãy trích xuất nội dung giữa một đoạn văn và một bảng và lưu nó vào một tài liệu Word mới. Làm theo các bước sau:

  1. Tải tài liệu Word bằng cách sử dụng lớp Document.
  2. Tham chiếu đến các nút bắt đầu và kết thúc bằng cách sử dụng phương thức Document.FirstSection.Body.GetChild(NodeType, int, boolean).
  3. Gọi phương thức ExtractContent(startPara, endPara, true) để trích xuất các nút vào một đối tượng.
  4. Sử dụng phương thức trợ giúp GenerateDocument(Document, extractedNodes) để tạo một tài liệu chứa nội dung đã trích xuất.
  5. Lưu tài liệu đã trả về bằng phương thức Document.Save(string).

Dưới đây là một mẫu mã minh họa cách trích xuất văn bản giữa một đoạn văn và một bảng trong C#:

Trích Xuất Văn Bản Giữa Các Đoạn Dựa Trên Kiểu

Giờ hãy khám phá cách trích xuất nội dung giữa các đoạn văn dựa trên kiểu. Trong ví dụ này, chúng ta sẽ trích xuất nội dung giữa “Heading 1” đầu tiên và “Heading 3” đầu tiên trong tài liệu Word. Làm theo các bước sau:

  1. Tải tài liệu Word bằng cách sử dụng lớp Document.
  2. Trích xuất các đoạn văn vào một đối tượng bằng cách sử dụng phương thức trợ giúp ParagraphsByStyleName(Document, “Heading 1”).
  3. Trích xuất các đoạn văn vào một đối tượng khác bằng cách sử dụng phương thức trợ giúp ParagraphsByStyleName(Document, “Heading 3”).
  4. Gọi phương thức ExtractContent(startPara, endPara, true), truyền các phần tử đầu tiên trong cả hai mảng đoạn văn làm tham số.
  5. Sử dụng phương thức trợ giúp GenerateDocument(Document, extractedNodes) để tạo một tài liệu chứa nội dung đã trích xuất.
  6. Cuối cùng, lưu tài liệu đã trả về bằng phương thức Document.Save(string).

Dưới đây là một mẫu mã minh họa cách trích xuất nội dung giữa các đoạn văn dựa trên kiểu:

Đọc Thêm Về Việc Trích Xuất Văn Bản

Khám phá các tình huống khác của API .NET cho việc trích xuất văn bản tài liệu Word trong bài viết tài liệu này.

Nhận Thư Viện Trích Xuất Văn Bản Word Miễn Phí

Bạn có thể nhận được một giấy phép tạm thời miễn phí để trích xuất văn bản mà không bị giới hạn đánh giá.

Kết Luận

Aspose.Words for .NET là một thư viện đa năng giúp đơn giản hóa quy trình trích xuất văn bản C# từ Word trong khi bảo tồn định dạng. Với các tính năng phong phú và API thân thiện với người dùng, bạn có thể làm việc hiệu quả với tài liệu Word và tự động hóa nhiều tình huống liên quan đến xử lý các ký tự đặc biệt trong quá trình trích xuất văn bản C#. Dù bạn đang phát triển các ứng dụng cần xử lý tài liệu Word hay chỉ đơn giản là trích xuất văn bản, Aspose.Words for .NET là một công cụ quý giá cho các nhà phát triển.

Khám phá các tính năng bổ sung của Aspose.Words for .NET qua tài liệu. Nếu bạn có bất kỳ câu hỏi nào, hãy liên hệ với chúng tôi qua diễn đàn.

Xem Thêm

Mẹo: Bạn cũng có thể muốn xem Aspose Chuyển Đổi PowerPoint Sang Word, mô tả quy trình chuyển đổi từ bài thuyết trình sang tài liệu Word phổ biến.