VC遍歷資料夾下所有檔案和資料夾

2021-06-19 06:17:00 字數 1395 閱讀 5961

2010-03-25 16:59

一、先介紹乙個結構win32_find_data

typedef struct _win32_find_data

win32_find_data;

win32_find_data ffd;

handle hfind = findfirstfile("c:",&ffd);

二、函式findfirstfile

1、宣告:handle findfirstfile(lpctstr lpfilename,lpwin32_find_data lpfindfiledata);

2、引數:

lpfilename string,欲搜尋的檔名。可包含萬用字元,並可包含乙個路徑或相對路徑名

lpfindfiledata win32_find_data,乙個win32_find_data指標,用於裝載與找到的檔案有關的資訊,該結構可用於後續的搜尋

3、返回值:

如執行成功,返回乙個搜尋控制代碼。如果出錯,返回乙個invalid_handle_value常數,一旦不再需要,應該用findclose函式關閉這個控制代碼

4、功能

讀取檔案資訊到乙個win32_find_data結構中,返回這個檔案的控制代碼

5、注釋:

由這個函式返回的控制代碼可以作為乙個引數用於findnextfile函式。這樣一來,就可以方便的列舉出與lpfilename引數指定的檔名相符的所有檔案(是指檔名含有萬用字元)

三、函式findnextfile

1、宣告bool findnextfile(handle hfindfile, lpwin32_find_data lpfindfiledata);

2、引數:

handle hfindfile搜尋的檔案控制代碼,函式執行的時候搜尋的是此控制代碼的下一檔案

lpwin32_find_data lpfindfiledata乙個win32_find_data指標,

3、返回值:

如果呼叫成功返回乙個非0值;呼叫失敗,返回為0,可呼叫getlasterror來獲取錯誤資訊

4、功能

繼續查詢findfirstfile函式搜尋後的檔案

5、注釋:

這個函式可以連續呼叫,以方便的列舉出與lpfilename引數指定的檔名相符的所有檔案

四、下面是遍歷**

#include

#include

#include

using namespace std;

//只能處理目錄:lppath只能是路徑

find(char * lppath)

}else

if(!findnextfile(hfind,&findfiledata))  break;

}findclose(hfind);

}

VC遍歷資料夾下所有檔案和資料夾

一 先介紹乙個結構win32 find data typedef struct win32 find data win32 find data 可以通過 findfirstfile 函式,根據檔案路徑把待操作檔案的相關屬性讀取到 win32 find data 結構中去 win32 find dat...

遍歷資料夾下所有檔案

對於遍歷資料夾來說,其實並不麻煩,使用file轉化位址物件,再用file組獲取內容,其實google都差不多做好了,我就懶得廢話了,直接上 public listlist new arraylist 遍歷所有檔案 public listgetfilelist string path else ret...

shell 遍歷資料夾下所有檔案

linux 下有tree命令可以檢視指定資料夾下的所有檔案 需要安裝tree,ubuntu下sudo apt get install tree 要實現這樣的功能,可以有多種實現方式,指令碼語言就是一種方便快捷的方式,python,shell都可以很容易實現。最近在學習makefile編寫,其中有很多...