首页
/
每日頭條
/
科技
/
提取數據到word
提取數據到word
更新时间:2025-09-14 08:53:26

在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
推荐阅读
河南科技大學的錄取通知書什麼樣
河南科技大學的錄取通知書什麼樣
河南科技大學快來快來小十九們的通知書已經新鮮出爐讓我們先一睹為快吧一次鼎鼎誠摯的邀請小十九們加入河南科技大學的大家庭中在這次的邀請函中負責招生工作的老師們為大家配備了河科大的高清大地圖喲明德博學,日新笃行從這一刻開始小十九們與鼎鼎正式的連接...
2025-09-14
空調推薦選購攻略
空調推薦選購攻略
空調選購指南1、空調按類型可分為挂機(變頻、定頻)、櫃機(變頻、定頻),每款産品包含,外觀(材質)、能效、核心功能、主要參數、二維碼等2、關于(用電)參數,變頻機的參數表格裡(如下圖),代表該26型變頻機在國家要求的工況下運行1136小時,...
2025-09-14
windows11硬盤需要重新分區嗎
windows11硬盤需要重新分區嗎
硬盤是否要分區?這個事很多人都有自己的習慣,我個人有個習慣還是會分區,以前用XP的時候,40GB的硬盤往往會劃分10GB空間給C盤裝系統和常用軟件,其他軟件、遊戲要裝到别的分區中,一般是4個。2020年了,硬盤是否還要分區,特别是現在很多人...
2025-09-14
vivo手機怎麼設置呼叫轉移
vivo手機怎麼設置呼叫轉移
vivo手機怎麼設置呼叫轉移?打開手機,點擊手機裡的設置進入設置界面,點擊電話,現在小編就來說說關于vivo手機怎麼設置呼叫轉移?下面内容希望能幫助到你,我們來一起看看吧!vivo手機怎麼設置呼叫轉移打開手機,點擊手機裡的設置。進入設置界面...
2025-09-14
華為mate128g官網報價
華為mate128g官網報價
2015年11月,華為正式發布了新一代華為MateS,目前這款手機正在蘇甯易購訊天國際手機專營店火熱銷售中,價格僅為1269元,喜歡的朋友不妨關注一下。華為MateS華為MateS的機身正面搭載了一塊5.5英寸,1920x1080像素的屏幕...
2025-09-14
Copyright 2023-2025 - www.tftnews.com All Rights Reserved