Asked Oct 4th, 2020 4:08 p.m. 503 0 1
  • 503 0 1
0

Đọc file Word bằng office.interop.word

Share
  • 503 0 1

Mình đang xây dựng ứng dụng để đọc file word bằng thư viện office.interop.word nhưng tìm đọc docs của Microsoft mình vẫn chưa hình dung ra được cách sử dụng thư viện này. Anh em nào có kinh nghiệm có thể cho mình một vài ví dụ được k? Mình cảm ơn rất nhiều!!!!

1 ANSWERS


Answered Oct 5th, 2020 2:25 a.m.
Accepted
+1

Giả sử ta có 1 file demo.doc như sau:

One

Two

three

Ta có chương trình C# như thế này để đọc toàn bộ file

using System;
using Microsoft.Office.Interop.Word;

class Program
{
    static void Main()
    {
        // Ta mở tệp
        Application application = new Application();
        Document document = application.Documents.Open("C:\\demo.doc");

        // Một vòng lặp đếm số từ trong doc rồi in từ đó ra, chú ý là nó đếm số từ chứ ko phải số ký tự
        int count = document.Words.Count;
        for (int i = 1; i <= count; i++)
        {
            string text = document.Words[i].Text;
            Console.WriteLine("Word {0} = {1}", i, text);
        }
        // Dùng xong đóng file lại để không tốn bộ nhớ
        application.Quit();
    }
}

Ta có output sau:

Word 1 = One
Word 2 =
Word 3 = Two
Word 4 =
Word 5 = three
Word 6 =
Share
Avatar Nam Nguyễn Thành @thanhnam4698
Oct 5th, 2020 3:14 a.m.

Cảm ơn anh. Nâng cao hơn 1 chút thì theo như những gì e tìm hiểu thì một đoạn trong word sẽ được biểu diễn trong thẻ <w:p></w:p>., bên trong sẽ có chứa các thẻ <w:r></w:r>. Vậy thì mình có cách nào để truy cập vào từng thẻ <w:r> k ạ

0
| Reply
Share
Oct 5th, 2020 3:44 a.m.

@thanhnam4698 bajn có thể tìm hiểu thư viện này: DocumentFormat.OpenXml.Wordprocessing

0
| Reply
Share
Avatar Nam Nguyễn Thành @thanhnam4698
Oct 5th, 2020 4:35 a.m.

@thangnt À Oke a. Cảm ơn anh rất nhiều

0
| Reply
Share
Viblo
Let's register a Viblo Account to get more interesting posts.