本文摘自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)
{
Document document =
new
Document();
document.LoadFromFile(
@"C:\Users\Administrator\Desktop\中国梦.docx "
);
Section section = document.Sections[0];
section.Paragraphs[7].AppendBookmarkStart(
".NETFramework"
);
section.Paragraphs[8].AppendBookmarkEnd(
".NETFramework"
);
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)
{
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"
);
}
}
}
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 》频道 >>
¥125.8元 清华大学出版社
作者:[美]克里斯琴·内格尔(Christian Nagel)著。出版时间:2019年3月。
转载请注明出处:木庄网络博客 » C#中VB.NET给Word文档添加/撤销书签的实例