FindFirstFile

ction "Fin lpFin

VB聲明

Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long

說明

根據檔案名稱查找檔案

返回值

Long,如執行成功,返回一個搜尋句柄。如果出錯,返回一個INVALID_HANDLE_VALUE常數,一旦不再需要,應該用FindClose函式關閉這個句柄

參數表

參數 類型及說明
lpFileName String,欲搜尋的檔案名稱。參數可如下
c:\Windows\*.* //在c:\Windows目錄中查找所有檔案 c:\Windows\System32\*.dll //在c:\Windows\System32目錄中查找所有dll檔案
c:\Windows\System.ini ;在c:\Windows目錄中查找System.ini檔案
c:\Windows\a???.* // 在c:\Windows目錄中查找所有以a開頭的檔案名稱長度.為4個字元的檔案
Test.dat //在 當前目錄查找Test.dat檔案
*.* //在當前目錄查找所有檔案
(注!一定要帶檔案名稱。如果參數為“c:\Windows”,則返回的檔案名稱為“Windows”,並且接下來調用FindNextFile會返回失敗)
lpFindFileData WIN32_FIND_DATA,這個結構用於裝載與找到的檔案有關的信息。該結構可用於後續的搜尋
結構說明:
WIN32_FIND_DATA STRUCT
dwFileAttributes DWORD ? ; 檔案屬性
ftCreationTime FILETIME ;檔案的創建日期
ftLastAccessTime FILETIME ;檔案的最後存取日期
ftLastWriteTime FILETIME ;檔案的最後修改日期
nFileSizeHigh DWORD ? ;檔案長度的高32位
nFileSizeLow WORD ? ;檔案長度的低32位
dwReserved0 DWORD ? ;內部使用
dwReserved1 DWORD ? ;內部使用
cFileName BYTE MAX_PATH dup(?) ;本次找到的檔案名稱
cAlternate BYTE 14 dup(?) ;檔案的8.3結構的短檔案名稱
WIN32_FIND_DATA ENDS
dwFileAttributes欄位可以是下面取值的組合,通過這個欄位可以檢查找到的究竟是一個檔案還是一個子目錄,以及其他的檔案屬性:
● FILE_ATTRIBUTE_ARCHIVE——檔案包含 歸檔屬性
● FILE_ATTRIBUTE_COMPRESSED——檔案和目錄被壓縮。
● FILE_ATTRIBUTE_DIRECTORY——找到的是一個目錄。
● FILE_ATTRIBUTE_HIDDEN——檔案包含隱含屬性。
● FILE_ATTRIBUTE_NORMAL——檔案沒有其他屬性。
● FILE_ATTRIBUTE_READONLY——檔案包含唯讀屬性。
● FILE_ATTRIBUTE_SYSTEM——檔案包含系統屬性。
● FILE_ATTRIBUTE_TEMPORARY——檔案是一個 臨時檔案
(返回的檔案名稱中會包含"."和".."。“.'代表本目錄,".."代表上一層目錄。一般情況下需要把這兩個名稱過濾掉。比如要進行檔案刪除操作)

註解

由這個函式返回的句柄可以作為一個參數用於FindNextFile函式。這樣一來,就可以方便的枚舉出與lpFileName參數指定的檔案名稱相符的所有檔案

VC聲明

HANDLE FindFirstFile(
LPCTSTR lpFileName, // file name
LPWIN32_FIND_DATA lpFindFileData // data buffer
);

功能說明

該函式到一個資料夾(包括子資料夾)去搜尋指定檔案 如果要使用附加屬性去搜尋檔案的話 可以使用FindFirstFileEx函式

參數說明

HANDLE hFindFile搜尋的檔案句柄 函式執行的時候搜尋的是此句柄的下一檔案
LPWIN32_FIND_DATA lpFindFileData 指向一個用於保存檔案信息的 結構體

返回值

如果調用成功返回一個句柄,可用來做為 FindNextFileFindClose參數
調用失敗 返回為INVALID_HANDLE_VALUE(即-1) ,可調用 GetLastError來獲取 錯誤信息

相關詞條

相關搜尋

熱門詞條

聯絡我們