Windowsのファイルソート順が変

既出ではあるようだが。。。
http://support.microsoft.com/kb/319827/ja

Windows XP および Windows Server 2003 のデフォルトの状態では、ファイル名やフォルダ名に含まれる文字列の中の数字はテキストではなく、数値と見なされます。フォルダ名やファイル名の中の数字は、その数値の順に並べ替えられます。

だそうだ。実際、画像1のような事象が生じる。
フォルダ名9a99,9999,a999がある場合、昇順の場合、この順序に並ぶ。辞書順で考えると、最初に二つはa<9、2番目と3番目はa>9と評価されているように見えるわけで奇妙なのである。しかし、数字として評価される部分同士は数字の大小で、数字とアルファベットなら無条件に数字が小さいということのようで、このようになるようだ。
ちなみに、cmd.exeではアルファベット順だ(画像2)

わかりにくいっす。自分は、3ケタで納めるため、月を16進数で入れる(2009/3/31->'9331'、2009/10/2->'9A02'、2010/2/2->'A202')のでこの工夫は不便。*1

↑ 画像1

↑ 画像2

*1:この順番にはならない。