0

短いファイル名と長いファイル名を個別に選択したディレクトリでSDHCカード(FAT32)を作成する必要があります。例:短いファイル名MYDIRだが長い名前i am a cool name. yeah. check out the awesomeness.ウィキペディアに基づくと、2つの名前の間に必須の相関関係はないので、私の目標は可能であるはずです。

LFNから8.3名を作成するための強制的なアルゴリズムはありません

-http ://en.wikipedia.org/wiki/8.3_filename#Overview

これを行うために必要なシステム(Windows、Mac、Linux、16進エディター)を使用できますが、簡単な方が良いです。ありがとう!

4

2 に答える 2

2

短いファイル名は、前述のアルゴリズムを使用してLFNから自動的かつ強制的に作成されます。(FAT32仕様でも詳しく説明されています)。これはファイルシステムドライバーによって行われます(少なくともWindowsとLinuxでは)。推奨されないドライバーを変更しない限り、実際には変更できません。これを1つのディレクトリに対してのみ実行する場合は、同じ名前の重複エントリを作成しないように注意しながら、16進エディタでディスクイメージを変更することでこれを実現できます。

これが私がLinuxで試したことです:

#dd if=/dev/zero of=fatImage bs=1048576 count=256
#mkfs.vfat -F 32 fatImage
#mount -o loop fatImage  /mnt
#cd /mnt
#mkdir ThisIsALongDirectoryName

fatドライバーは、ディレクトリの短い名前THISIS〜1を生成します。両方の名前を使用してアクセスできます。

#cd /mnt/ThisIsALongDirectoryName
#cd /mnt/THISIS~1

次に、パーティションをアンマウントした後、16進エディター(KDEのOkteta)でイメージを開き、SFNエントリTHISIS〜1を検索して、 MYNEWDIRに置き換えました。また、各32バイトのLFNサブエントリは、オフセット13にSFNのチェックサムを格納します。したがって、THISIS〜1(0xA6)のチェックサムを計算して、すべてのMYNEWDIR(0x6A)のチェックサムに置き換える必要がありました。 LFNサブエントリ。変更を保存した後、イメージを再マウントし、古いLFNと新しいSFNを使用してディレクトリにアクセスできました。

#cd /mnt/ThisIsALongDirectoryName
#cd /mnt/MYNEWDIR
于 2013-01-02T15:01:48.267 に答える
0

技術的な参考資料としてウィキペディアに頼ることはありません。Microsoftのドキュメントを参照することをお勧めします。これを読んで、2つのファイルの間に関係があるかもしれないと思うので、私はこれらをいじることをお勧めしません。おそらく短い名前を使用したほうがよいでしょう。

于 2013-01-02T14:05:33.460 に答える