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

在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
推荐阅读
冰箱内機滴水怎麼處理
冰箱内機滴水怎麼處理
1、冰箱冷藏室頂部不停滴水是因為冰箱内部的食物存放的過多存放時食物的溫度過高沒有直接進行冷卻就将食物...
2026-08-26
一輛suv最多能拉多重的貨
一輛suv最多能拉多重的貨
1、一般來說,一輛SUV後備箱的最大承載能力在1000斤左右,這個數值根據具體車型的不同會有一些不同,大家可以從車輛說明書上看到明确的數值。2、通常來說達到了最大載重之後并不是說發動機就拉不動車子了,隻是說這樣會讓發動機有較大的負載,很容易帶來嚴重損傷。3、然後就是對車輛行駛狀态的影響,因為重量都集中在後備箱區域,這種偏沉”的情況下,車子的操控性能就會下降,尤其是在上坡、下坡、轉彎的時候,很容易發
2026-08-26
耳機頭斷在手機裡怎麼辦
耳機頭斷在手機裡怎麼辦
1、首先找一支老式的圓珠筆,主要用筆芯。2、之後把筆芯的尾部加熱,可以用熱水也可以用打火機。3、如果用打火機,一定要注意時間别燒太長時間燒一下就可以了。4、之後把筆芯插到插孔,裡筆芯就會把斷在插孔裡的插頭套住慢慢拔出筆芯。5、最後斷在插孔裡裡的插頭也就帶出來了。
2026-08-26
美版有鎖的iPhone可以更換硬件解鎖嗎
美版有鎖的iPhone可以更換硬件解鎖嗎
1、可以解的。硬解指使用卡貼,或者拆機硬性将機器的基帶進行降級從而達到破解的目的,會對機器造成一定傷...
2026-08-26
路亞釣餌的使用方法
路亞釣餌的使用方法
1、看目标魚類型,選擇一個合适路亞餌,首先看你要釣什麼類型的魚,如果是釣大型的魚類,那在挑選魚餌的時候就應該選擇個體稍微大一些的路亞餌,要是小型魚,那就要選擇小型的路亞餌,根據魚體型的大小去選擇。2、看天氣,水裡有魚但是不上魚,很大一本分原因是天氣原因。氣溫忽高忽低,天氣變化不定時,魚也不容易釣獲,...
2026-08-26
Copyright 2023-2026 - www.tftnews.com All Rights Reserved