讀取微軟三劍客的內容建立資訊

2022-01-23 08:20:44 字數 1536 閱讀 6698

在微軟辦公套件生成的檔案裡面(xlsx,docx,pptx檔案),存放了文件內容的建立和修改資訊(不同於檔案建立和修改資訊),包括內容建立者、建立時間、最後一次修改的時間和修改人。這些資訊可以用檔案管理器,右鍵-詳細資訊頁面能檢視到:

那麼,我們怎麼把這些資訊讀出來呢?

原理:2007版以上的三劍客檔案,實際上是壓縮後的xml檔案,這些資訊儲存在docprops/core.xml中。

該檔案的內容大致如下:

xml version="1.0" encoding="utf-8" standalone="yes"

?>

<

cp:coreproperties

xmlns:cp

=" "

。。。>

<

dc:creator

>zj1301

dc:creator

>

<

cp:lastmodifiedby

>zj1301-蘇光傑

cp:lastmodifiedby

>

<

dcterms:created

xsi:type

="dcterms:w3cdtf"

>2015-03-19t06:25:56z

dcterms:created

>

<

dcterms:modified

xsi:type

="dcterms:w3cdtf"

>2018-09-14t09:41:18z

dcterms:modified

>

cp:coreproperties

>

利用這一原理,我們將三劍客檔案解壓後,從docprops/core.xml中讀取出來

以下是根據這一原理編寫的函式

///

///讀取文件的內容建立資訊

///支援microsoft2007版以上三劍客 xlsx, docx,pptx

/// ///

microsoft2007版以上三劍客 xlsx, docx,pptx

///private createinfo getcreateinfo(string

docxfile)

directory.delete(path.getdirectoryname( file),

true

); }

return

info;}}

private

class

createinfo

public

string lastmodifiedby

public datetime created

public datetime modified

}

**中用到了dotnetzip, 需要引用nuget尋找匯入。

文字三劍客

檔案萬用字元和正規表示式 文字過濾工具grep linux系統中,一切皆檔案。強大的文字編輯和處理工具便必不可少了,在linux系統中,有文字處理三劍客 grep,sed,awk。在進行介紹三大工具前,我們先總結一下檔案萬用字元和正規表示式。檔案萬用字元主要就是對檔案的查詢進行檔名的模糊查詢,而正規...

三劍客 高階

awk 是一種程式語言,用於在linux unix下對文字和資料進行處理 awk 資料可以來自標準輸入,乙個或多個檔案,或其他命令的輸出 awk 通常是配合指令碼進行使用,是乙個強大的文字處理工具。01.進行逐行掃瞄檔案,從第一行到最後一行 02.尋找匹配的特定模式的行,在行上進行操作 03.如果沒...

物件導向三劍客

物件導向三把劍 封裝 繼承 多型 封裝 將資訊偽裝起來,內部封裝所有不變的 對外開放變化的 方法封裝,封裝複雜性,對外開放簡單方法 比如 屬性,可以讓外界刪除 修改,取值,那就開放 方法 把所有複雜邏輯封裝在方法裡。對外開放引數和返回值 繼承 顧名思義就是拿別人的東西為自己所用 有實現繼承,介面繼承...