■No98600 (ばんじ さん) に返信 > フォルダ内のサブディレクトも含めたテキストファイルだけの数を数えたいです。 > 下記のコードだとテキストファイル以外も含めたフォルダ内のすべてのファイルの数を数えてしまいます。 > _T("\\*.txt")にするとテキストファイルを数えますが、サブディレクトリ内のテキストファイルまで数えてくれません。 > どうすればいいでしょうか?よろしくお願いします。 > ファイル数をカウントするところで、問答無用のでカウントアップしていますが、 以下のようにファイルのみかつ特定の拡張子のみを対象としてカウントしないとだめなのでは? 具体的には以下のような感じでカウントする必要があると思います。 if( (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTDORY) ){ if( path != _T(".") && path != _T("..") ){ result += file_count_native( src + _T('\\') + path ); } } else{ // ここでファイルの種類を見てテキストファイルとするものを数える(とりあえず拡張子が.txtを対象) if( lstrcmpi( PathFindExtension( wfd.cFileName, ".txt" ) == 0 ){ ++result; } }
- Child Tree -