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

在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
推荐阅读
win11安裝ubuntu雙系統
win11安裝ubuntu雙系統
微軟應用商店沒有适用于WSL的最新版本的Ubuntu,但這并不意味着你不能自己安裝它。在Windows10和11上安裝WSL2比以往任何時候都容易,并且向其中添加發行版隻需要從MicrosoftStore下載應用程序即可。Microsoft...
2026-11-08
2022年手機電池續航排行榜
2022年手機電池續航排行榜
據了解,著名電池廠商勁量(Energizer)将在本屆MWC展會上推出多達26款手機,包括四條不同産品線。其中大容量電池手機EnergizerPowerMaxP18KPro最受大衆關注,其電池容量可稱之為“世界之最”。注意——此款手機電池容...
2026-11-08
二手手機為啥回收這麼便宜
二手手機為啥回收這麼便宜
來源:讀特某“二手機回收”網店故意開高價吸引顧客把手機寄過來,然後再尋找各種借口臨時壓價,顧戶不同意便稱已經“拆機”或者一直拖延不退貨,客戶因為擔心零配件被換,無奈之下隻好妥協以低價出售。記者獲悉,深圳市公安局龍崗分局循線追查,将這個網店的...
2026-11-08
記憶力變差連人的名字都記不住
記憶力變差連人的名字都記不住
你是否有過晚上非常疲憊但依然忍不住刷手機的經曆呢?長期過度使用手機會給身體帶來怎樣的危害呢?來看專家介紹過度使用手機帶來的危害以及學習如何讓大腦科學休息根據今年中國互聯網絡信息中心8月31日發布的《中國互聯網絡發展狀況統計報告》顯示,截至2...
2026-11-08
excel各種數據輸入方法
excel各種數據輸入方法
在使用Excel時,我們經常要輸入一些特殊的數據信息,如長數據電話号碼,身份證号碼,分數,001這樣的序列數,這些數據的輸入與平時我們在單元格輸入數據的方法不一樣,如果我們直接輸入身份證号碼,最終在單元格顯示的是科學計數法的形式,根本不能顯...
2026-11-08
Copyright 2023-2026 - www.tftnews.com All Rights Reserved