Next: Random Access in a Directory Stream, Previous: Reading and Closing a Directory Stream, Up: Accessing Directories [Contents][Index]
Here’s a simple program that prints the names of the files in the current working directory:
#include <stdio.h> #include <sys/types.h> #include <dirent.h>
int main (void) { DIR *dp; struct dirent *ep; dp = opendir ("./"); if (dp != NULL) { while (ep = readdir (dp)) puts (ep->d_name); (void) closedir (dp); } else perror ("Couldn't open the directory"); return 0; }
The order in which files appear in a directory tends to be fairly random. A more useful program would sort the entries (perhaps by alphabetizing them) before printing them; see Scanning the Content of a Directory, and Array Sort Function.