FindNextFile

FindNextFileは、FindFirstFileの結果を格納したWIN32_FIND_DATA型変数を元に、条件にあてはまる次のファイルを探すWindowsAPI・・・。

FindNextFile 関数

今回は、これを使ってtestフォルダの中にあるすべてのファイルを列挙する・・・。

f:id:BG1:20151106105505p:plain

testフォルダを作り、その中に、

f:id:BG1:20151106105608p:plain

ファイルを4つ用意しておく・・・。

FindFirstFileで"test\\*"とすれば、これは"testフォルダ以下のすべてのファイルやフォルダ"という意味になる・・・。
これで、wfdに最初のファイル検索情報が格納される・・・。

do-while文で、wfd.cFileNameを出力したら、FindNextFileで次のファイル情報を取得しwfdに格納するという処理を繰り返す・・・。
FALSEならもう見つからないということでループから抜ける・・・。

最後にhFindを閉じる・・・。

wfd.cFileName = .
wfd.cFileName = ..
wfd.cFileName = newtest.txt
wfd.cFileName = test1.txt
wfd.cFileName = test2.txt
wfd.cFileName = test3.txt
続行するには何かキーを押してください . . .

"."は現在のフォルダ、".."は一つ上のフォルダを指す・・・。
まあ、こういうのは普通、列挙から除外したほうがいいけど、"*"だとこれらもひっかかるので注意・・・。

Sample/FindNextFile.cpp at master · bg1bgst333/Sample · GitHub