mfc プログラムでフォルダ内にある全てのファイル名を取得するには

MFCでは、CFileFindクラスを使用して、フォルダー内の全てのファイル名を取得できます。以下にサンプルコードを示します。

CFileFind finder;
CString path = _T("C:\\folder\\path\\*.*");
// 查找第一个文件
BOOL bFind = finder.FindFile(path);
while (bFind)
{
bFind = finder.FindNextFile(); // 查找下一个文件
if (!finder.IsDots() && !finder.IsDirectory())
{
CString fileName = finder.GetFileName(); // 获取文件名
// 处理文件名
// ...
}
}
finder.Close();

上記のコードでは、CFileFindクラスのFindFile()メソッドを使用して指定したパス下の最初のファイルを見つける。その後、FindNextFile()メソッドを使用して次のファイルが見つかるまで同じ操作を続ける。各ループでは、GetFileName()メソッドでファイル名を取得し、そのファイル名を処理する。

上記サンプルのファイルパスはワイルドカードのパスで、\*.\*で全てのファイルを対象にできます。特定のファイルタイプのファイル名を取得する場合は、パスを変更できます。

bannerAds