首页
/
每日頭條
/
科技
/
提取數據到word
提取數據到word
更新时间:2026-04-21 17:17: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
推荐阅读
dlan功能是什麼意思
dlan功能是什麼意思
家庭娛樂網絡。通過網線連接和無線連接兩種方式,将現有家庭中的各項數碼設備聯合成一個娛樂網絡,方便傳輸數碼圖像、音樂内容以及視頻影像。把電視、電腦這些家電連在一個局域網裡,讓圖片、音樂、視頻在所有設備上得到共享。就是說如果你有DLNA功能的設備,比如電視、電腦、手機、數碼相機(一般合資品牌才做這項功能),通過有線或者無線路由器把帶DLNA的這些設備連在一起,就可以用電視讀取電腦、手機、數碼相機裡的視
2026-04-21
支付寶香港/澳門用戶如何申請個人認證
支付寶香港/澳門用戶如何申請個人認證
1、登錄支付寶賬戶。2、點擊【實名認證】,歸屬地區選擇【港澳】。3、點擊【立即申請】。4、根據頁面填寫身份信息。
2026-04-21
聯通5g升級包是跟原套餐疊加的麼
聯通5g升級包是跟原套餐疊加的麼
聯通5g升級包是在原套餐疊加費用的。據網上營業廳界面顯示,中國聯通5G升級包套餐包含10GB的國内5G流量,其中下行速率峰值為500Mbps,相當于家庭中500M的寬帶。聯通5G升級包共有29元/月(10GB)、49元/月(20GB)、99元/月(30GB)三個檔次。在3月31日之前訂購的用戶可享受優惠:29元首月為9.9元,49元的首月為19.9元,99元首月為49.9元,次月恢複正常資費标準,
2026-04-21
微信截圖可以作為法律上的證據麼
微信截圖可以作為法律上的證據麼
微信截圖可以作為證據,但法院應該對該截圖的真僞進行核實。根據《民事訴訟法》第63條規定,證據包括:當事人的陳述、書證、物證、視聽資料、電子數據等。根據《最高人民法院關于民事訴訟證據的若幹規定》第十四條電子數據包括下列信息、電子文件:1、網頁、博客、微博客等網絡平台發布的信息。2、手機短信、電子郵件、即時通信、通訊群組等網絡應用服務的通信信息。3、用戶注冊信息、身份認證信息、電子交易記錄、通信記錄、
2026-04-21
聯通卡停機多久銷号
聯通卡停機多久銷号
聯通手機卡欠費2-3個月自動銷号,如果你不欠費,号碼就是通的,如果手機卡欠費了,欠費兩個月系統自動銷戶,銷戶三個月之内可以辦理補卡複機,超過三個月,手機卡就不能複機了,這時隻能本人帶上身份證件到就近的營業廳辦理銷戶手續。SIM卡(SubscriberIdentificationModule)是GSM系統的移動用戶所持有的智能卡,可在不同的手機上使用,也稱為用戶身份識别卡。SIM卡主要用于存儲用戶身
2026-04-21
Copyright 2023-2026 - www.tftnews.com All Rights Reserved