天天看點

C#/VB.NET 給Word文檔添加/撤銷書簽

在現代辦公環境中,閱讀或者編輯較長篇幅的Word文檔時,想要在文檔中某一處或者幾處留下标記,友善日後查找、修改時,需要在相對應的文檔位置插入書簽。那對于開發者而言,在C#或者VB.NET語言環境中,如何來快速、簡便的插入書簽呢,我分享一下我的經驗。這裡我用到了一款E-iceblue公司釋出的一款免費的Word元件(Free Spire.Doc for .NET),方法很簡單,如下:

步驟一:初始化Document執行個體并加載Word文檔

Document document = new Document();
document.LoadFromFile(@"C:\Users\Administrator\Desktop\中國夢.docx ");      

步驟二:于第七段末和第八段間插入書簽,命名書簽為“C#.bookmark”

Section section = document.Sections[0];
section.Paragraphs[7].AppendBookmarkStart("C#.bookmark");
section.Paragraphs[8].AppendBookmarkEnd("C#.bookmark ");      

步驟三:儲存檔案

document.SaveToFile("Bookmark.docx", FileFormat.Docx);
System.Diagnostics.Process.Start("Bookmark.docx");      

完成後以上步驟後,文檔中查找定位即可,文檔自動定位到目前所設書簽位置。

C#/VB.NET 給Word文檔添加/撤銷書簽

以上簡單三個步驟即可完成對word文檔書簽插入。

完整代碼如下,供參考:

C#

using System;
using Spire.Doc;
using Spire.Doc.Documents;

namespace WordBookmark
{
    class Bookmark
    {
        static void Main(string[] args)
        {
            //Load Document
            Document document = new Document();
            document.LoadFromFile(@"C:\Users\Administrator\Desktop\中國夢.docx ");

            //Insert Bookmark
            Section section = document.Sections[0];
            section.Paragraphs[7].AppendBookmarkStart(".NETFramework");
section.Paragraphs[8].AppendBookmarkEnd(".NETFramework");

            //Save and Launch 
            document.SaveToFile("Bookmark.docx", FileFormat.Docx);
            System.Diagnostics.Process.Start("Bookmark.docx");
        }
    }
}      

VB.NET:

Imports System
Imports Spire.Doc
Imports Spire.Doc.Documents

Namespace WordBookmark
    
    Class Bookmark
        
        Private Shared Sub Main(ByVal args() As String)
            'Load Document
            Dim document As Document = New Document
            document.LoadFromFile("C:\Users\Administrator\Desktop\中國夢.docx ")
            'Insert Bookmark
            Dim section As Section = document.Sections(0)
            section.Paragraphs(7).AppendBookmarkStart(".NETFramework")
            section.Paragraphs(8).AppendBookmarkEnd(".NETFramework")
            'Save and Launch 
            document.SaveToFile("Bookmark.docx", FileFormat.Docx)
            System.Diagnostics.Process.Start("Bookmark.docx")
        End Sub
    End Class
End Namespace      

同樣的,撤銷書簽也可以參考執行我下面的操作

步驟一:加載需要撤銷書簽的Word文檔

Document doc = new Document();
           doc.LoadFromFile(@"C:\Users\Administrator\Desktop\中國夢(書簽).docx");      

步驟二:撤銷已有書簽

doc.Bookmarks.RemoveAt(0);      
doc.SaveToFile("Remove Bookmark.docx", FileFormat.Docx);
            System.Diagnostics.Process.Start("Remove Bookmark.docx");      

撤銷書簽後,得到以下文檔效果

C#/VB.NET 給Word文檔添加/撤銷書簽
如圖,原本插入書簽的段落已撤銷書簽      
完整代碼如下      

C#:

using Spire.Doc;

namespace Removing
{
    class Program
    {
        static void Main(string[] args)
        {
            //Load Document
            Document doc = new Document();
            doc.LoadFromFile(@"C:\Users\Administrator\Desktop\中國夢(書簽).docx ");

            //Remove Bookmark
            doc.Bookmarks.RemoveAt(0);

            //Save and Launch
            doc.SaveToFile("Remove Bookmark.docx", FileFormat.Docx);
            System.Diagnostics.Process.Start("Remove Bookmark.docx");
        }
    }
}      
Imports Spire.Doc

Namespace Removing
    
    Class Program
        
        Private Shared Sub Main(ByVal args() As String)
            'Load Document
            Dim doc As Document = New Document
            doc.LoadFromFile("C:\Users\Administrator\Desktop\中國夢(書簽).docx ")
            'Remove Bookmark
            doc.Bookmarks.RemoveAt(0)
            'Save and Launch
            doc.SaveToFile("Remove Bookmark.docx", FileFormat.Docx)
            System.Diagnostics.Process.Start("Remove Bookmark.docx")
        End Sub
    End Class
End Namespace      

以上内容是本人對word插入及撤銷書簽的操作示範,希望我的這個分享對你有所啟發,感謝閱讀!