C/C++下读取某一文件夹下所有文件的方法

函数:                                                                                               vector<string> get_all_files_names_within_folder(string folder)
{
    vector<string> names;
    char search_path[200];
    sprintf(search_path, "%s*.*", folder.c_str());
    WIN32_FIND_DATA fd; 
    HANDLE hFind = ::FindFirstFile(search_path, &fd); 
    if(hFind != INVALID_HANDLE_VALUE) 
    { 
        do 
        { 
            // read all (real) files in current folder
            // , delete '!' read other 2 default folder . and ..
            if(! (fd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ) 
            {
                names.push_back(fd.cFileName);
            }
        }while(::FindNextFile(hFind, &fd)); 
        ::FindClose(hFind); 
    } 
    return names;
}
使用方法:                                                                                           vector<string> vec;                                                                                 vec = get_all_files_names_within_folder("F:\\OpenCV\\CutKoobee2Eye\\");

你可能感兴趣的:(C++,c,读文件夹,读文件夹下的文件)