web-dev-qa-db-ja.com

FAT32ファイルシステムのファイルを並べ替える方法は?

これは少し奇妙に聞こえるかもしれませんが、何らかの理由で、私のカーオーディオシステムはコピーされた順序でフォルダを表示しています。システムには、フォルダをアルファベット順に表示する設定はありません。約30GBの音楽があるので、これは本当に面倒です。つまり、フォルダがたくさんあり、新しいフォルダを追加するたびに、リストの最後に追加されます...また、必要なときにまったく実用的ではありません。特定の何かを検索します。

したがって、システムはFAT32レコードテーブルに記録されている順序でファイルを読み取っていると思います。したがって、質問は単純です。このレコードをアルファベット順に並べ替える方法はありますか?

9
Ucodia

私はこれを試していませんが、グーグル検索はここでほぼ完璧に見える結果につながります。 FAT-32ソーター 。それはあなたが抱えている問題をほぼ正確に説明しています。これがお役に立てば幸いです。

7
ChrisInEdmonton

それは奇妙ではありません。リストを並べ替えるには「大量の」メモリが必要ですが、MP3プレーヤーなどの小さな組み込みシステムでは使用できない場合があります。並べ替える前に、すべてのファイル名を格納するのに十分な大きさの配列が必要です。

したがって、これらのシステムは、ディレクトリエントリが子アイテムを格納する順序に関係なくファイルを一覧表示し、配列の必要性を排除します。これは、ディレクトリ一覧全体ではなく単一のファイル名をロードするだけだからです。

ファイルを別のディレクトリに好きな順序で移動して、手動で並べ替えることができます

記憶媒体がFATフォーマットのUSBサムドライブの場合、ファイルは、ファイルが作成および削除される順序とその名前の長さに基づいて、複雑な順序で列挙されます。ただし、簡単な方法は、ディレクトリからすべてのファイルを削除してから、ファイルファイルを列挙したい順序でディレクトリに移動することです。このように、最初に使用可能なスロットはディレクトリの最後にあるスロットであるため、ファイルエントリが追加されます。

https://blogs.msdn.Microsoft.com/oldnewthing/20140304-00/?p=16

または、この並べ替えの目的で作成されたツールを使用してください

1
phuclv

特定のユーティリティの必要性を回避し、シーケンスを任意の順序で設定できる別のオプションは、FAT32ドライブ上のファイルまたはフォルダの名前を変更することです。

カーオーディオシステムで使用しているUSBフラッシュドライブ(ドライブにある順序でファイルとフォルダーを再生します)があり、この手法を使用してフォルダーの順序を設定し、オーディオシステムがそれらを認識する順序を設定します。

私の観察では、ファイルまたはフォルダの名前を長い名前に変更すると、ディレクトリエントリがディレクトリの最後に再作成されるため、再生順序の最後に表示されます。その後、名前を元の名前に戻すことができ、新しい位置が維持されます。次に、各フォルダーまたはファイルで、希望する順序になるまでこのプロセスを繰り返します。 2番目に必要なアイテムから始めて、3番目に必要なアイテムというように続きます。

小さなバッチファイルを使用できるため、このプロセスを少し面倒にするために:

ren %1 %1-padding
ren %1-padding %1
dir
1
David0337

プログラム Rosso Windowsで動作し、FAT32ドライブを並べ替えることができます。

C:\> rosso F:
Sorting directory /
0
Steven Penny