Import và Export file Word với Microsoft Office Word (2007-2013) bằng kĩ thuật Bookmark kết hợp Content control

Bài viết sau đây sẽ hướng dẫn cách import / export nội dung file word trên các thẻ bookmark đã được thiết kế sẵn bằng chương trình Microsoft Word (áp dụng cho phiên bản Office 2007 – 2013).

 

Tổng quan kĩ thuật import file word
1. Tổng quan kĩ thuật import file word

 

Sử dụng kĩ thuật bookmark trong Microsoft Word
2. Sử dụng kĩ thuật bookmark trong Microsoft Word

 

Bookmark trong file Word
3. Bookmark trong file Word

 

Lập trình với bookmark
4a. Lập trình với bookmark

 

Lập trình với bookmark
4b. Lập trình với bookmark

Hành động “get giá trị” được dùng trong trường hợp import file word (lấy giá trị có trong bookmark).

Hành động “set giá trị” được dùng trong trường hợp export file word (gán gía trị của bookmark).

 

Lập trình với bookmark
4c. Lập trình với bookmark

Hành động “lưu tài liệu” được dùng trong trường hợp export file word.

 

Source code mẫu:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using HtmlAgilityPack;

using Word = Microsoft.Office.Interop.Word;

using System.Runtime.InteropServices;

namespace QuanLyDeTaiNCKH.Domain
{

    public static class MyParser
    {

        // Method trích thông tin từ file doc/docx

        // filePath: đường dẫn file doc/docx

        // fieldNames: danh sách chuỗi bookmark cần lấy có trong file word

        // return Danh sách kết quả đã parse từ danh sách bookmark tương ứng

        public static List<String> ParseFieldsFromAWordFile(String filePath, List<String> fieldNames)
        {

            List<String> returnedStrings = new List<String>();

            var WordApp = new Word.Application();

            Word.Document doc = null;

            Word.Bookmarks bookmarks = null;

            Word.Bookmark myBookmark = null;

            Word.Range bookmarkRange = null;

            try
            {

                WordApp.Visible = false;

                WordApp.Documents.Open(filePath);

                doc = WordApp.ActiveDocument;

                bookmarks = doc.Bookmarks;

                foreach (String fieldName in fieldNames)
                {

                    myBookmark = bookmarks[fieldName]; // Xác định bookmark

                    bookmarkRange = myBookmark.Range;  // Xác định vùng bookmark

                    returnedStrings.Add(bookmarkRange.Text.ToString()); // Lấy giá trị của bookmark

                }

                WordApp.Documents.Close();

            }

            finally
            {

                WordApp.Quit();

                if (bookmarkRange != null) Marshal.ReleaseComObject(bookmarkRange);

                if (myBookmark != null) Marshal.ReleaseComObject(myBookmark);

                if (bookmarks != null) Marshal.ReleaseComObject(bookmarks);

                if (doc != null) Marshal.ReleaseComObject(doc);

            }

            return returnedStrings;

        }

    }

}

 

Nguồn tham khảo: http://www.add-in-express.com/creating-addins-blog/2013/08/27/word-document-properties-bookmarks-content-controls-quick-parts/ 

2,361 total views, 3 views today

Trả lời

Next Post

7 Sai Lầm Trong Sự Nghiệp Lập Trình

CN Th6 28 , 2015
Bài viết sau đây được trích nguyên văn từ bài viết trên Blog IT Việc. Các bạn có thể xem nguyên văn tại đây: http://blog.itviec.com/2015/06/7-sai-lam-trong-su-nghiep-lap-trinh/  — [John Sonmez là một developer viết blog để giúp đỡ các developer khác phát triển sự nghiệp và xây dựng thương hiệu cá nhân. ITviec hân […]