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

在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
推荐阅读
手機貼膜要不要拿下以前的膜
手機貼膜要不要拿下以前的膜
當小夥伴們買來一個新的手機,做的第一件事兒是什麼呢?百分之九十九的人應該都會首先會給自己的愛機貼上一個膜,不管是鋼化膜還是普通的膜。曾有人笑稱“喬布斯費勁九牛二虎之力将手機變薄了2毫米,在中國一張膜給貼回來了”。可是在諾基亞手機時代,手機貼...
2026-10-18
手機北鬥導航怎麼用
手機北鬥導航怎麼用
手機北鬥導航怎麼用?打開北鬥導航,在上方搜索欄中搜索自己想要找到的地點,在下拉菜單裡點擊,在地點的右方有兩個選項,點擊第1個,會出現地點的詳細信息點擊第2個,顯示的是移動到地點的路線,我來為大家科普一下關于手機北鬥導航怎麼用?以下内容希望對...
2026-10-18
移動硬盤在電腦上無法識别怎麼辦
移動硬盤在電腦上無法識别怎麼辦
移動硬盤在電腦上無法識别怎麼辦?我來之前就遇到過這麼一種情況,那就是當我打開移動硬盤的時候,出現了無法識别移動硬盤的情況這可把我來給急壞了,最後花了一些時間才把它給解決了所以,今天我來就來好好的給你們說說出現移動硬盤無法識别的原因是什麼,下...
2026-10-18
3168數字能量分析
3168數字能量分析
在我們每個人的讀書年代,經常會聽到這樣一句話:xx規律不以人的意志為轉移,隻可以利用,不可以改變。在商業世界,同樣有一些“法則”執拗頑固地發揮作用,不以人的意志為轉移。認清它的人,能與之為友,為我所用。不知道的人,要走彎路,會摔跟頭。比如我...
2026-10-18
iphone5s發布時間
iphone5s發布時間
說到iPhone,我們的第一反應就是那款另類的操作系統,這個操作系統帶來的優勢也極其明顯,那就是流暢。蘋果不卡已經是大家公認的優點,安卓雖然現在的優化已經非常出色,但是還隻是無限接近于ios的流暢度,還未能趕上。因此一部iPhone用個兩三...
2026-10-18
Copyright 2023-2026 - www.tftnews.com All Rights Reserved