Differences
This shows you the differences between two versions of the page.
— |
c_11:examples:dir_list_cc [2017/02/25 18:01] (current) mike created |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <file c++ dir_list.cc> | ||
+ | #include <iostream> | ||
+ | #include <dirent.h> | ||
+ | #include <vector> | ||
+ | |||
+ | // To Build: gcc -std=c++11 dir_list.cc -lstdc++ -o dir_list | ||
+ | |||
+ | int getdir (std::string dir, std::vector<std::string> &files) | ||
+ | { | ||
+ | DIR *dp; | ||
+ | struct dirent *dirp; | ||
+ | if((dp = opendir(dir.c_str())) == NULL) { | ||
+ | std::cout << "Error(" << errno << ") opening " << dir << std::endl; | ||
+ | return errno; | ||
+ | } | ||
+ | |||
+ | while ((dirp = readdir(dp)) != NULL) { | ||
+ | files.push_back(std::string(dirp->d_name)); | ||
+ | } | ||
+ | closedir(dp); | ||
+ | return 0; | ||
+ | } | ||
+ | |||
+ | int main(){ | ||
+ | std::string dir = std::string("."); | ||
+ | std::vector<std::string> files = std::vector<std::string>(); | ||
+ | |||
+ | getdir(dir,files); | ||
+ | |||
+ | for (unsigned int i = 0;i < files.size();i++) { | ||
+ | std::cout << files[i] << std::endl; | ||
+ | } | ||
+ | } | ||
+ | </file> |