翻譯|使用教程|編輯:胡濤|2023-03-13 13:20:34.720|閱讀 171 次
概述:本文將向您展示我們如何通過將 Spire.Doc 與 C# 和 VB.NET 結合使用來獲取書簽中的純文本。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Spire.Doc for .NET是一款專門對 Word 文檔進行操作的 .NET 類庫。在于幫助開發人員無需安裝 Microsoft Word情況下,輕松快捷高效地創建、編輯、轉換和打印 Microsoft Word 文檔。擁有近10年專業開發經驗Spire系列辦公文檔開發工具,專注于創建、編輯、轉換和打印Word/PDF/Excel等格式文件處理,小巧便捷。
E-iceblue 功能類庫Spire 系列文檔處理組件均由中國本土團隊研發,不依賴第三方軟件,不受其他國家的技術或法律法規限制,同時適配國產操作系統如中科方德、中標麒麟等,兼容國產文檔處理軟件 WPS(如 .wps/.et/.dps 等格式
Spire.Doc 支持檢索、替換和刪除指定書簽的書簽內容。本文將向您展示我們如何通過將 Spire.Doc 與 C# 和 VB.NET 結合使用來獲取書簽中的純文本。
第 1 步:創建一個 Document 實例,并加載一個示例 Word 文檔。
Document doc = new Document(); doc.LoadFromFile("Bookmark.docx");
第 2 步:創建 BookmarkNavigator 實例以訪問書簽。
BookmarksNavigator navigator = new BookmarksNavigator(doc);
第 3 步:通過書簽名稱找到特定書簽。調用 GetBookmarkContent 方法獲取書簽內的內容。
navigator.MoveToBookmark("bookmark_1"); TextBodyPart textBodyPart = navigator.GetBookmarkContent();
第 4 步:遍歷書簽內容中的項目以獲得書簽的純文本、無格式文本。
foreach (var item in textBodyPart.BodyItems) }
結果:
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; } } } }
完整代碼:
[C#]
using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using System; namespace GetText { class Program { static void Main(string[] args) { Document doc = new Document(); doc.LoadFromFile("Bookmark.docx"); BookmarksNavigator navigator = new BookmarksNavigator(doc); navigator.MoveToBookmark("bookmark_1"); TextBodyPart textBodyPart = navigator.GetBookmarkContent(); 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); } } }
[VB.NET]
Imports Spire.Doc Imports Spire.Doc.Documents Imports Spire.Doc.Fields Namespace GetText Class Program Private Shared Sub Main(args As String()) Dim doc As New Document() doc.LoadFromFile("Bookmark.docx") Dim navigator As New BookmarksNavigator(doc) navigator.MoveToBookmark("bookmark_1") Dim textBodyPart As TextBodyPart = navigator.GetBookmarkContent() Dim text As String = Nothing For Each item As var In textBodyPart.BodyItems If TypeOf item Is Paragraph Then For Each childObject As var In TryCast(item, Paragraph).ChildObjects If TypeOf childObject Is TextRange Then text += TryCast(childObject, TextRange).Text End If Next End If Next Console.WriteLine(text) End Sub End Class End Namespace
以上便是在 C#、VB.NET 中獲取書簽中的文本,如果您有其他問題也可以繼續瀏覽本系列文章,獲取相關教程,你還可以給我留言或者加入我們的官方技術交流群。
歡迎下載|體驗更多E-iceblue產品
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn