エクスプローラ上でファイル名でソートした時の並び順
エクスプローラを見ていたらファイルの並び順に違和感を感じたので調べてみたら WindowsXP からソートのアルゴリズムが変わっていたのね。
名前に数字が含まれるファイルやフォルダの並び順が Windows XP と Windows 2000 で異なる (Microsft サポート技術情報)
デフォルトで Windows XP のファイルとフォルダ名に含まれる文字列中の数字は、テキストではなく、数値とみなされます。 フォルダとファイル名の中の数字は、その数値に従って並べ替えられます。
ふーむ。
確かにファイル名の先頭に通し番号をつけている場合、桁が増えてしまうと並び順が崩れてしまって悲しい思いをする事はあるけど、それ以外の場合で有効な場面てあるのだろうか?
どうもいらんお世話な機能な気がするのだが。
不都合が起きる場合もあるだろうし。
例えばファイル名に日付を使っていて、こんなファイル名を付けていた場合、
2005.txt 200401.txt 200501.txt 200601.txt 20050101.txt
なんて並び順になってしまう訳だが、この並びを期待する人はいるのか。
それともう一つ気になる点を発見。
並び順として、数字の 0 が ドットよりも前になっているのだ。
つまり、こうなる。
a0.txt a.txt aa.txt
これはおかしいだろ〜(´Д`;
こんな並び順で誰が喜ぶんだ〜?
なお、WindowsXP SP1 以降であればレジストリを変更する事で Windows 2000 までの並び順に戻す事が可能。
以下、サポート技術情報から引用
1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。
2. [名前] ボックスに regedit と入力し、[OK] をクリックします。
3. 状況に応じて、以下のいずれかの手順を実行します。
・コンピュータのすべてのユーザーに対してポリシーを設定するには、次のレジストリ キーに移動して、クリックします。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Currentversion\Policies\Explorer
ここで Explorer キーが存在しない場合は、 Policies キーの位置に移動した状態で、[編集] メニューの [新規] をポイントし、[キー] をクリックすると、新しいキー #1 という名前の新しいキーが作成されます。そこで Explorer と名前を変更して Explorer キーを作成します。または
・現在のユーザーに対してポリシーを設定するには、次のレジストリ キーに移動して、クリックします。
HKEY_CURRENT_USER\Software\Microsoft\Windows\Currentversion\Policies\Explorer
4. [編集] メニューの [新規] をポイントし、[DWORD 値] をクリックします。
5. NoStrCmpLogical と入力し、Enter キーを押します。
6. [編集] メニューの [修正] をクリックします。
7. 名前に数字を含むファイルとフォルダに対して使用する並び順を設定するには、状況に応じて、次のいずれかを実行します。
・Windows XP で、Windows 2000 でのファイルとフォルダの並び順に使用されている方法を使用するように設定するには、[値のデータ] ボックスに、1 と入力し、[OK] をクリックします。
または
・ファイルとフォルダの並び順にデフォルトの Windows XP の方法を設定するには、[値のデータ] ボックスに、0 と入力し、[OK] をクリックします。注 NoStrCmpLogical 値が存在しないか、0 (ゼロ) に設定されている場合、デフォルトの Windows XP の並び順が使用されます。
8. レジストリ エディタを終了して、コンピュータを再起動します。
でも、もう少しお手軽な操作で戻せるようにしておいてくれてもよかったんでないかなぁ。