SFindFile クラス

ファイル検索機能を提供します。ファイルを検出する毎にコールバック用仮想関数が呼び出されます。検索する深さを任意に 指定できます。
更新日 2014-07-29

仕様

指定のディレクトリ下の任意のファイル(ワイルドカード・属性指定によるディレクトリも可)をシーケンシャルサーチします。 階層も選べます。ファイルが見つかるとコールバック用仮想関数OnFindFile() が呼ばれます。サブクラス化して、この関数を オーバーライドして実装してください。

ソースコード

SFindFile.h 右クリックで「対象をファイルに保存」でダウンロードしてください。サンプルソースコードもご参考ください。

依存関係

sjstring.hを使用してます。同じフォルダに入れておいてね。

メソッド

ファイル検索開始のメソッドとコールバック用仮想関数だけです。

FindFile()

指定したディレクトリ下の任意のファイル(ワイルドカード・属性指定によりディレクトリも可)をシーケンシャルサーチします。探す深さ範囲も 限定する事ができます。ファイルが見つかる度にコールバック用仮想関数OnFindFile() が呼ばれます。
myFindFile ff;
BOOL bRet = ff.FindFile( "d:\", "*.jpg"); 

OnFindFile()

該当するファイルが見つかる度に呼び出されます。フォルダパスを示す文字列とWIN32_FIND_DATA 構造体へのポインタが引数にあります。 純粋仮想関数なので、オーバーロードしてください。
BOOL SFindFile::OnFindFile(LPCTSTR lpczPath, LPWIN32_FIND_DATA lpWIN32_FIND_DATA);