在
c#中獲得檔案資訊很容易,只需要用
fileinfo
類或者fileversioninfo
類就可以獲得,但是如果想要獲得檔案的擴充套件資訊,則無法從這兩類來獲得。不過在
c#中,這也不是件難事,只要引入「
microsoft shell controls and automation
」這個com
就可以獲得。
接下來就分別來介紹。
首先介紹
fileinfo
類,這個類非常簡單,首先需要根據檔名來建立
fileinfo
物件,例如:
using
system.io;
fileinfo fi = new fileinfo(
yourfilename
);
那麼以後就可以通過此物件來訪問檔案一些屬性,例如檔案大小,建立時間,最後訪問時間,最後寫入時間等等,還可以通過訪問物件的
attributes
屬性,來獲得當前檔案是唯讀、隱藏之類屬性,這裡我就不細說了,詳情參看
msdn
。第二個要說的,就是
filesysteminfo
類,這個類是
fileinfo
類的基類,這裡也就不多說了。
第三個要說的,就是如何判斷乙個檔案的
version
資訊,這就需要來介紹
fileversioninfo
這個類。但是並不是所有的檔案都有
version
資訊,因此在使用
fileversioninfo
的時候需要注意的是,最好先判斷一下檔案的副檔名。不過乙個
fileversioninfo
類物件不能通過建構函式來建立,需要呼叫類的靜態方法來獲得,例如:
using
system.diagnostics;
fileversioninfo fvi = fileversioninfo.getversioninfo(
yourfilename
);
通過此物件,可以獲得檔案的產品名稱,公司名,版本號,語言版本,版權等等,這方面詳情可以參看
msdn
。最後要說的,就是如何得到乙個檔案的擴充套件資訊,例如標題,作者等等,這些資訊從如上三個類中是無法獲得。但是要在
c#程式中獲得,就需要引入乙個「
microsoft shell controls and automation
」這個com
,這個com
是由系統「
shell32.dll
」而提供。這方面的例子,可以參看如下這篇文章。
為了方便大家使用,我把其中類的**貼出來。
using
shell32;// use this namespace after add the reference
//////
returns the detailed information of a given file.
///
public
class cfileinfo
}
#endregion
}
else
}
#region
"properties"
public
string filename
set }
public
string filepath
set }
public
string fullfilename
set }
public
string fileextension
set }
public
long filesize
set }
public
long fileversion
set }
public datetime filecreationdate
set }
public datetime filemodificationdate
set }
public
string filetype
}
public
string filetitle
}
public
string filesubject
}
public
string fileauthor
}
public
string filecategory
}
public
string filecomment
}
#endregion
#region
"methods"
private arraylist getdetailedfileinfo(string sfile)
}
catch(exception)
}
return areturn;
}
#endregion
}
// helper class from holding the detailed file informations
// of the system
public
class detailedfileinfo
set
}
public
string value
set }
public detailedfileinfo(int id, string value)
}
如何用C 獲得檔案資訊以及擴充套件資訊
在c 中獲得檔案資訊很容易,只需要用fileinfo類或者fileversioninfo類就可以獲得,但是如果想要獲得檔案的擴充套件資訊,則無法從這兩類來獲得。不過在c 中,這也不是件難事,只要引入 microsoft shell controls and automation 這個com就可以獲得...
如何用C 獲得檔案資訊以及擴充套件資訊
在c 中獲得檔案資訊很容易,只需要用fileinfo類或者fileversioninfo類就可以獲得,但是如果想要獲得檔案的擴充套件資訊,則無法從這兩類來獲得。不過在c 中,這也不是件難事,只要引入 microsoft shell controls and automation 這個com就可以獲得...
如何用Python寫C擴充套件?
1.環境準備 如果是linux只需要安裝python3.x python dev。windows下稍微複雜點,vs2017 python3.6.3 vs2017可用社群版,需要選擇安裝的環境如下 2.1 c模組封裝 以計算兩個數相加為例,選擇任意資料夾,新建如下c語言原始碼 檔名 calc.c in...