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

在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
推荐阅读
手機投屏後電視沒聲音
手機投屏後電視沒聲音
手機投屏後電視沒聲音?手機和超等電視處于同一局域網内将超等電視的“多屏互動”功能開啟該選項在“設置”-->系統”-->“多屏互動”,今天小編就來聊一聊關于手機投屏後電視沒聲音?接下來我們就一起去研究一下吧!手機投屏後電視沒聲音手機和超等電視...
2026-06-07
單純的補水爽膚水推薦
單純的補水爽膚水推薦
4款爽膚水測評推薦:深透補水活化細胞,美白補水,絕對是大愛!1.資生堂時光琉璃禦藏集效爽膚水産品介紹:資生堂的這款爽膚水中蘊含非常豐富的植物精粹,它将野生的刺梨果精華作為原料,讓營養滲透到肌底,去修複松弛的肌膚,從而調整膚質的整體平衡性;綠...
2026-06-07
蘋果的鎖屏密碼能解開麼
蘋果的鎖屏密碼能解開麼
今天為大家分享,我們如何利用一個小遊戲,從而破解朋友的iPhone手機鎖屏密碼。不過有一點大家需要注意,該教程純屬娛樂。不過玩這個遊戲有一個條件,那就是要破解的這部iPhone手機控制中心内要有計算器。具體的操作步驟如下:首先我們讓好友打開...
2026-06-07
華為關閉哪個開關比較省電
華為關閉哪個開關比較省電
華為關閉哪個開關比較省電?關閉無用的開關實踐上很多人不論有沒有WIFI,都把WIFI開着,藍牙開着,nfc開着這些都是耗電大戶,在不知不覺中就跑掉了很多電,除非必需要用到它,否則就把它關閉掉,下面我們就來聊聊關于華為關閉哪個開關比較省電?接...
2026-06-07
蘋果手機發燙是通病嗎
蘋果手機發燙是通病嗎
我們在玩手機的時候經常會遇到手機發燙的情況,那麼手機究竟是為什麼會發燙,又該怎麼避免?如果你的iphone手機經常發燙,可能是你的手機電池壞了。手機發熱的主要原因有:運行高耗能的App。如玩3D遊戲、播放影片、大量資料傳輸等,造成CPU持續...
2026-06-07
Copyright 2023-2026 - www.tftnews.com All Rights Reserved