首页
/
每日頭條
/
科技
/
提取數據到word
提取數據到word
更新时间:2026-10-14 06:44:20

在Word中可将文件通過OLE對象嵌入的方式插入到文檔,包括Word、excel、PDF、PPT、圖片、宏文件、文件包等在内的多種文件類型。對文檔中已插入的文檔對象,也可通過本文中的方法提取出來另存到指定路徑。本文将通過C#程序代碼示例做詳細介紹。

dll文件安裝(3種方法)

1.通過NuGet安裝dll(2種方法)

1.1可以在Visual Studio中打開“解決方案資源管理器”,鼠标右鍵點擊“引用”,“管理NuGet包”,然後搜索“Free Spire.Doc”,點擊“安裝”。等待程序安裝完成。

1.2将以下内容複制到PM控制台安裝。

Install-Package FreeSpire.Doc -Version 9.9.7

2.手動添加dll引用

可通過手動下載包到本地,然後解壓,找到BIN文件夾下的Spire.Doc.dll。然後在Visual Studio中打開“解決方案資源管理器”,鼠标右鍵點擊“引用”,“添加引用”,将本地路徑BIN文件夾下的dll文件添加引用至程序。

提取文件

提取文件時,主要通過以下幾個步驟完成:

  • 創建Document類的對象,并通過Document.LoadFromFile()方法加載Word文檔。
  • 遍曆Word文檔中的所有Section中的子對象,判斷對象是否為Paragraph類型。
  • 遍曆段落中的子對象,判斷對象是否為DocumentObjectType類型的OLE對象。
  • 将符合條件的OLE對象通過as操作符轉換為DocOleObject類型。
  • 通過File.WriteAllBytes()方法提取對象,保存到本地路徑。

注:以下代碼中所使用到的Word測試文件和提取到的多媒體文件路徑為VS程序的Debug路徑,如:F:\VS2017Project\ ExtractMediaFile\bin\Debug 。

下面是完整代碼示例:

C#

提取數據到word(C提取Word中插入的多媒體文件)1

using Spire.Doc; using Spire.Doc.Documents; using Spire.Doc.Fields; using System.IO; namespace ExtractMediaFile { class Program { static void Main(string[] args) { //加載Word文檔 Document doc = new Document(); doc.LoadFromFile(@"OLE.docx"); //遍曆所有子對象 foreach (Section section in doc.Sections) { foreach (DocumentObject obj in section.Body.ChildObjects) { if (obj is Paragraph) { Paragraph paragraph = obj as Paragraph; foreach (DocumentObject obj2 in paragraph.ChildObjects) { if (obj2.DocumentObjectType == DocumentObjectType.OleObject) { DocOleObject ole = obj2 as DocOleObject; //提取文件 File.WriteAllBytes(ole.PackageFileName, ole.NativeData); } } } } } } } }

提取數據到word(C提取Word中插入的多媒體文件)2

文件讀取結果如圖:

提取數據到word(C提取Word中插入的多媒體文件)3

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
華為手機信号出現沙漏
華為手機信号出現沙漏
華為手機信号出現沙漏?華為手機信号出現沙漏建議:卸載最近安裝第三方軟件嘗試查看手機是否有系統更新推zd送,将手機升級到最新系統版本,現在小編就來說說關于華為手機信号出現沙漏?下面内容希望能幫助到你,我們來一起看看吧!華為手機信号出現沙漏華為...
2026-10-14
如何解決手機電池耗電快的問題
如何解決手機電池耗電快的問題
手機是現在人手一部的移動設備,具有許多功能,能夠滿足人們日常上網和移動支付,以及遊戲和聽音樂等。總而言之,它非常的強大,強大到人們的生活離不開它。但是許多小夥伴們在使用過程中會發現,手機有時候耗電非常快,讓人非常沒有安全感。那麼有什麼辦法可...
2026-10-14
西北農林科技大學屬于985學校嗎
西北農林科技大學屬于985學校嗎
各位考生家長朋友們大家好!這一期解讀性價比最高的985大學——西北農林科技大學。喜歡農學的考生家長重點關注。學校概況西北農林科技大學。簡稱西農或西北農大,坐落于陝西鹹陽楊陵,是教育部直屬的全國重點大學,中央直管副部級建制高校,世界一流大學建...
2026-10-14
手機開機一直震動黑屏
手機開機一直震動黑屏
手機黑屏是什麼原因電池沒電導緻手機黑屏手機電池沒電可能是導緻手機黑屏的原因。有時由于工作繁忙,忘記給手機電池充電,導緻手機屏幕變暗并停止工作。嘗試重新插入手機充電,耐心等待15到20分鐘,然後重新啟動。手機電池問題導緻黑屏手機黑屏的原因可能...
2026-10-14
用手機拍燈展為什麼會壞
用手機拍燈展為什麼會壞
剛剛過去的元宵節鬧花燈,最熱鬧的果然還是朋友圈。不過,你别隻注意到拍出來好看的絢麗燈景,每一張照片背後,都是手機的心驚膽戰。前幾天就有手機因為陪主人看燈展,慘遭不測。據當事人描述,她和朋友們在燈展現場拿出手機拍視頻拍照片,一道強光閃過,當場...
2026-10-14
Copyright 2023-2026 - www.tftnews.com All Rights Reserved