### Question 19.20

How can I read a directory in a C program?

See if you can use the `opendir` and `readdir` routines, which are part of the POSIX standard and are available on most Unix variants. Implementations also exist for MS-DOS, VMS, and other systems. (MS-DOS also has FINDFIRST and FINDNEXT routines which do essentially the same thing.) `readdir` only returns file names; if you need more information about the file, try calling `stat`. To match filenames to some wildcard pattern, see question 13.7.

References: K&R2 Sec. 8.6 pp. 179-184
PCS Sec. 13 pp. 230-1
POSIX Sec. 5.1
Schumacher, ed., Software Solutions in C Sec. 8

Read sequentially: prev next up top

This page by Steve Summit // Copyright 1995 // mail feedback