在上一篇文章中介绍了关于C#如何插入Word书签、插入图片或表格到word、删除word书签等内容,本篇文章将继续介绍C#操作word书签的方法。下面的示例中将介绍
- C# 如何读取Word书签
- C# 如何替换Word书签
工具使用
- Spire.Doc for .NET 6.1
- Visual Studio
示例代码
原文档中的书签内容:
1. 读取word书签
【C#】
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using System; namespace GetTextOfBookmark_Doc { class Program { static void Main(string[] args) { //实例化Document类,加载测试文档 Document doc = new Document(); doc.LoadFromFile("test.docx"); //初始化BookmarkNavigator类对象 BookmarksNavigator navigator = new BookmarksNavigator(doc); //定位到指定书签位置,获取书签位置的文档内容 navigator.MoveToBookmark("bookmark1"); TextBodyPart textBodyPart = navigator.GetBookmarkContent(); //遍历书签内容中的子项目,并将文本信息提取至string类型变量中 string text = null; foreach (var item in textBodyPart.BodyItems) { if (item is Paragraph) { foreach (var childObject in (item as Paragraph).ChildObjects) { if (childObject is TextRange) { text += (childObject as TextRange).Text; } } } } //控制台输出文本 Console.WriteLine(text); Console.ReadLine(); } } }
读取结果如下:
2. 替换书签内容
【C#】
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; namespace EditOrReplaceBookmark_Doc { class Program { static void Main(string[] args) { //创建Document类实例,加载文档 Document document = new Document(); document.LoadFromFile("test.docx"); Section sec = document.AddSection();//添加section sec.AddParagraph().AppendText("Welcome Back, \n My Friend!"); //添加段落到section,并添加字符串内容 //获取段落内容 ParagraphBase firstReplacementParagraph = sec.Paragraphs[0].Items.FirstItem as ParagraphBase; ParagraphBase lastReplacementParagraph = sec.Paragraphs[sec.Paragraphs.Count - 1].Items.LastItem as ParagraphBase; //实例化类TextBodySelection和TextBodyPart TextBodySelection selection = new TextBodySelection(firstReplacementParagraph, lastReplacementParagraph); TextBodyPart part = new TextBodyPart(selection); BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document);//实例化BookmarksNavigator类 bookmarkNavigator.MoveToBookmark("bookmark1", true, true);//定位到书签“bookmark1”所在段落的位置 bookmarkNavigator.DeleteBookmarkContent(true);//删除原有书签位置的内容 bookmarkNavigator.ReplaceBookmarkContent(part, true, true);//用新添加段落的内容替换掉原书签的内容并保留格式 //移除section document.Sections.Remove(sec); //保存文档并打开 document.SaveToFile("替换书签.docx"); System.Diagnostics.Process.Start("替换书签.docx"); } } }
测试结果:
以上是本次关于C# 操作Word书签功能的补充介绍,如需转载,请注明出处。
(本文完)
相关推荐
二是如何利用C#批量替换Word文档中的书签文本。下面将对这两个知识点进行详细解析。 ### 一、使用C#操作Word文档并插入图片 在C#中操作Word文档通常需要用到`Microsoft.Office.Interop.Word`命名空间下的类库。这...
本篇文章将深入探讨如何使用C#来操作Microsoft Word中的书签,以及如何将DataGridView的数据作为表格插入到书签指定的位置。书签在Word文档中起到了定位和标记的作用,它们可以帮助开发者精确地在文档的特定位置进行...
C#操作Word文档,实现文字写入 本实例主要讲述了使用C#操作Word文档,实现文字写入功能。通过使用Word文档中的Range属性,能够轻松地向Word文档中添加文本内容。本实例中,首先创建了一个Windows窗体应用程序,然后...
在C#编程环境中,利用Microsoft.Office.Interop.Word库可以实现对Word文档进行批量查找和替换的操作。这个功能在处理大量文档时非常有用,例如在企业中更新标准文本、修改报告模板或者统一格式等场景。以下是对这个...
在C#编程环境中,操作Microsoft Word文档是一项常见的任务,尤其在自动化办公流程或者软件开发中。本主题将深入探讨如何使用C#来处理Word文档,包括添加文本、图片和表格,绘制表格,管理书签,删除空白页,以及对...
本文将深入探讨如何使用C#来替换Word文档中的特定标签内容,这在自动化报告生成、数据填充或者模板化文档处理等场景中非常实用。 首先,要实现这个功能,我们需要引入一个名为`Microsoft.Office.Interop.Word`的DLL...
C#版本 NPOI 批量替换Word文档(doc文件)变量的方法。 网上各种代码都是直接替换run,但实际上很多变量是由多个run表示的,并不能直接用,本代码完美支持{变量}替换。
在Word文档中,书签是一个可以用来标记特定位置的对象,方便后续的操作。我们可以使用DocX的`Document.Bookmarks`属性来访问文档中的所有书签,然后根据书签的名字找到目标书签。 以下是使用DocX库插入图片的基本...
本话题聚焦于使用C#编程语言实现打开Word文档并定位到特定书签的功能,这是一个非常实用的技术点,尤其适用于帮助系统或者文档查阅场景。在描述中提到了一个具体的例子:当用户点击页面上的“帮助”按钮时,程序会...
### C#操作Word文档进行查找和替换的知识点详解 #### 一、引入必要的命名空间与组件 为了在C#中操作Word文档,首先需要引入必要的命名空间和引用Microsoft Word对象库。具体步骤如下: 1. **引入命名空间**: ``...
总结来说,C#读取Word内容主要通过两种方式:一是使用Microsoft.Office.Interop.Word库,二是利用OpenXML SDK。两者各有优缺点,开发者应根据实际需求选择合适的方法。在项目开发过程中,确保正确处理异常,避免资源...
以上就是C#操作Word文档的一些核心知识点和常见操作,通过这些方法可以实现对Word文档的读取、编辑和创建。在实际开发中,根据具体需求,还可以结合其他高级特性,如模板应用、邮件合并、宏执行等。
压缩包中的`Bookmarks_SourceCode`很可能包含了一些示例代码,演示如何使用编程语言(如C#或Python)来操作Open XML文档中的书签。这些代码可以作为学习和实践的起点,帮助理解如何实际应用上述理论知识。 8. **...
本主题聚焦于如何利用C#来操作Microsoft Word文档,包括根据模板生成文档、替换内容以及插入表格等核心功能。这对于自动化报告生成、数据导出、文档处理等场景非常有用。 首先,要实现这些功能,我们需要引用...
在“C# Spire Word替换标签的操作”中,关键步骤包括: 1. **导入库**:首先,在C#项目中引入Spire.Doc库。这通常通过NuGet包管理器完成,添加`Spire.Doc`的依赖。 2. **创建Document对象**:使用`Spire.Doc....
C#读取Word文档的实现是C#编程操作Word遇到问题的解决技巧之一。为了读取Word文档,需要使用Called“Microsoft Word 9.0 object library”的COM组件,该组件提供了所有用来读取Word文档的对象和方法。在这里,我们...
本篇文章将深入探讨如何在C#中以二进制流读取Word文档。 首先,理解二进制流的概念至关重要。二进制流是计算机存储和传输数据的基本方式,它允许程序以原始字节序列的形式处理文件,而不是以文本或其他高级格式。在...
本主题聚焦于如何利用C#操作Microsoft Word文档,特别是针对书签进行内容替换和文档生成。以下是对这个主题的详细阐述: 1. **C#与Microsoft Office Interop**: 要操作Word文档,C#开发者通常会使用Microsoft ...
可以借助这个类库文件轻松读取Word资料