Does readdir() guarantee an order?

Tom picture Tom · Jan 23, 2012 · Viewed 37.7k times · Source

I'm getting a list of files on a linux-like system using opendir/readdir. It appears that the directory entries are returned in alphabetical order of file name. However, I don't see anything in the man pages about this order being guaranteed.

Can anyone tell me whether or not readdir guarrantees an order?

Answer

JaredPar picture JaredPar · Jan 23, 2012

The readdir method doesn't guarantee any ordering. If you want to ensure they are sorted alphabetically you'll need to do so yourself.

Note: I searched for a bit for definitive documentation saying this is the case. The closest I came is the following link

It's by no means definitive but it does give a nice overview of the command, its history and how its implementation is typically traversal order.