と に代わるものはありますfindfirst()
かfindnext()
。私は使用microsoft visual c++ 2010 express
していますが、これらの機能もヘッダーファイルもサポートしていません<dir.h>
か?
これらの関数を使用してディレクトリ内のファイルの数を数えようとしていましたが、これらの関数がないと問題が発生しています。
上記の機能に代わるものがない場合は、他の方法があります。? 他のいくつかの機能?
と に代わるものはありますfindfirst()
かfindnext()
。私は使用microsoft visual c++ 2010 express
していますが、これらの機能もヘッダーファイルもサポートしていません<dir.h>
か?
これらの関数を使用してディレクトリ内のファイルの数を数えようとしていましたが、これらの関数がないと問題が発生しています。
上記の機能に代わるものがない場合は、他の方法があります。? 他のいくつかの機能?
「iammilind」がコメントで述べたように (おそらく回答に値する)、Windows API のFindFirstFileおよびFindNextFile関数を使用できます。構造体を埋めて、無効なハンドルに到達するまで後者を反復処理するだけです。これらの関数はコンソールで動作しますが、'Windows.h' ヘッダーを含める必要があります。
ただし、これらの関数にはいくつかの落とし穴があります。Windows 以外でコードを実行する場合は、別のヘッダー/ライブラリ (vBx で言及されている Boost::Filesystem など) を使用する方がよいでしょう。
また、これが役立つ場合があります: C++ - すべてのファイル名をロード + 現在のディレクトリ内のファイル数をカウント + ファイル拡張子をフィルタ
そのためにBoost.Filesystemを使用できます
Windows では、_findnext、_findnext64、_findnexti64、_wfindnext、_wfindnext64、_wfindnexti64 を使用できます。