C#中VB.NET给Word文档添加/撤销书签的实例


本文摘自PHP中文网,作者黄舟,侵删。

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

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


1

2

Document document = new Document();

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

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


1

2

3

Section section = document.Sections[0];

section.Paragraphs[7].AppendBookmarkStart("C#.bookmark");

section.Paragraphs[8].AppendBookmarkEnd("C#.bookmark ");

步骤三:保存文件


1

2

document.SaveToFile("Bookmark.docx", FileFormat.Docx);

System.Diagnostics.Process.Start("Bookmark.docx");

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

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

完整代码如下,供参考:

C#


1

2

3

4

5

6

7

8

9

10

11

12

13

14

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:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

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文档


1

2

Document doc = new Document();

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

步骤二:撤销已有书签


1

doc.Bookmarks.RemoveAt(0);

步骤三:保存文件


1

2

doc.SaveToFile("Remove Bookmark.docx", FileFormat.Docx);

            System.Diagnostics.Process.Start("Remove Bookmark.docx");

撤销书签后,得到以下文档效果

如图,原本插入书签的段落已撤销书签

完整代码如下

C#


1

2

3

4

5

6

7

8

9

10

11

12

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

        }

    }

}

VB.NET:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

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

以上就是C#中VB.NET给Word文档添加/撤销书签的实例的详细内容!

相关阅读 >>

关于c#视频教程的资源分享

详解可选参数和命名参数实例

c#基础之操作优化实例教程

c#中匿名对象与var以及动态类型 dynamic的详解

c#中关于foreach遍历使用的深入理解

介绍c#中的堆和栈

c# webservice中访问http和https的wsdl以及生成配置节点的不同之处 (图)

c#中关于async与await的使用详解

介绍c#中的接口

c# invoke 和 begininvoke之间的区别详解

更多相关阅读请进入《VB.NET》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...