在现×××公环境中,阅读或者编辑较长篇幅的Word文档时,想要在文档中某一处或者几处留下标记,方便日后查找、修改时,需要在相对应的文档位置插入书签。那对于开发者而言,在C#或者VB.NET语言环境中,如何来快速、简便的插入书签呢,我分享一下我的经验。这里我用到了一款E-iceblue公司发布的免费Word组件(Free Spire.Doc for .NET),方法很简单,如下:

步骤一:初始化Document实例并加载Word文档

Documentdocument=newDocument();document.LoadFromFile(@"C:\Users\Administrator\Desktop\中国梦.docx");

步骤二:于第七段末和第八段间插入书签,命名书签为“C#.bookmark”

Sectionsection=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");

完成后以上步骤后,文档中查找定位即可,文档自动定位到当前所设书签位置。

以上简单三个步骤即可完成对word文档书签插入。

完整代码如下,供参考:

C#

usingSystem;usingSpire.Doc;usingSpire.Doc.Documents;namespaceWordBookmark{classBookmark{staticvoidMain(string[]args){//LoadDocumentDocumentdocument=newDocument();document.LoadFromFile(@"C:\Users\Administrator\Desktop\中国梦.docx");//InsertBookmarkSectionsection=document.Sections[0];section.Paragraphs[7].AppendBookmarkStart(".NETFramework");section.Paragraphs[8].AppendBookmarkEnd(".NETFramework");//SaveandLaunchdocument.SaveToFile("Bookmark.docx",FileFormat.Docx);System.Diagnostics.Process.Start("Bookmark.docx");}}}


VB.NET

ImportsSystemImportsSpire.DocImportsSpire.Doc.DocumentsNamespaceWordBookmarkClassBookmarkPrivateSharedSubMain(ByValargs()AsString)'LoadDocumentDimdocumentAsDocument=NewDocumentdocument.LoadFromFile("C:\Users\Administrator\Desktop\中国梦.docx")'InsertBookmarkDimsectionAsSection=document.Sections(0)section.Paragraphs(7).AppendBookmarkStart(".NETFramework")section.Paragraphs(8).AppendBookmarkEnd(".NETFramework")'SaveandLaunchdocument.SaveToFile("Bookmark.docx",FileFormat.Docx)System.Diagnostics.Process.Start("Bookmark.docx")EndSubEndClassEndNamespace

同样的,撤销书签也可以参考执行我下面的操作

步骤一:加载需要撤销书签的Word文档

Documentdoc=newDocument();doc.LoadFromFile(@"C:\Users\Administrator\Desktop\中国梦(书签).docx");

步骤二:撤销已有书签

doc.Bookmarks.RemoveAt(0);

步骤三:保存文件

doc.SaveToFile("RemoveBookmark.docx",FileFormat.Docx);System.Diagnostics.Process.Start("RemoveBookmark.docx");

撤销书签后,文本如下


完整代码如下

C#

usingSpire.Doc;namespaceRemoving{classProgram{staticvoidMain(string[]args){//LoadDocumentDocumentdoc=newDocument();doc.LoadFromFile(@"C:\Users\Administrator\Desktop\中国梦(书签).docx");//RemoveBookmarkdoc.Bookmarks.RemoveAt(0);//SaveandLaunchdoc.SaveToFile("RemoveBookmark.docx",FileFormat.Docx);System.Diagnostics.Process.Start("RemoveBookmark.docx");}}}


VB.NET

ImportsSpire.DocNamespaceRemovingClassProgramPrivateSharedSubMain(ByValargs()AsString)'LoadDocumentDimdocAsDocument=NewDocumentdoc.LoadFromFile("C:\Users\Administrator\Desktop\中国梦(书签).docx")'RemoveBookmarkdoc.Bookmarks.RemoveAt(0)'SaveandLaunchdoc.SaveToFile("RemoveBookmark.docx",FileFormat.Docx)System.Diagnostics.Process.Start("RemoveBookmark.docx")EndSubEndClassEndNamespace

以上内容是本人对word插入及撤销书签的操作演示,希望我的这个分享对你有所启发,感谢阅读!