8.3文件名

文件命名規範

8.3文件名(或简称8.3)是FAT文件系统的一种文件命名规范。在与“长文件名”并称时可以称为短文件名。广泛影响于采用FAT文件系统且不支持VFATDOSWindows操作系统(如Windows 95Windows NT 3.5及以前的版本)中。同时在以前的CP/M及某些的通用資料迪吉多微型電腦作業系統中也被使用。

概述

8.3文件名是一种文件名规范,它主要运用于FAT文件系统中。其后继者NTFS文件系统也支持8.3文件名。这种规范之所以被称为“8.3”,是因为其文件名的特殊格式:文件名的主体部分最多只能包含8个字符,而文件扩展名最多只能包含3个字符。二者之间用“.”相连。8.3文件名的目录和文件名都仅使用大写字母,但DOS和命令提示符都不大小写敏感(当然,如果使用UNIX类Unix等一般大小写敏感的操作系统,则应注意)。

8.3文件名必须包含主体文件名,但不必须包含扩展名,二者之间用“.”相连。但是如果输入“.”后没有输入扩展名,则“.”没有意义,会被忽略。比如12345678.会被系统保存为12345678

长文件名对8.3的兼容性

FAT最初只支持8.3文件名。FAT对于长文件名的支持,是从VFAT开始的。它是對於FAT的加強。VFAT檔案系統可允許比傳統的8.3檔名,支援更長、而且能大小寫混合的長檔名(LFN)。VFAT在Windows 95和Windows NT 3.5加入。

在VFAT的规范下,每一個長檔名便會自動產生一個相應的8.3檔案名稱,可容許檔案可以繼續更名、刪除或開啟。这是为了維持對以前的操作系统(例如DOS和Windows 3.1)和應用程式的向下兼容。

而在Windows NT系列中的NTFS檔案系統本身已經對長檔名作出支援,但8.3的名稱仍然會保留,供舊有的應用程式使用。這可以選擇性地關上這個功能以增加效能。

ReFS文件系统已经不再支持8.3文件名。

8.3文件名产生规则

由於這對於一個長檔名沒有一個必然的算法建立一個8.3檔名,Windows會使用以下的常規以決定一個8.3檔案名稱是如何產生:

  1. 如果長檔名本身是8.3,且全部为大寫字母,在磁碟上不會儲存長檔名。
    • 例如:"TEXTFILE.TXT"
  2. 如果長檔名本身是8.3,同时包含大小写字母,那麼長檔名會儲存大小寫混合字母的檔名,在8.3的名稱會儲存它的大寫字母版本。
    • 例如:"TextFile.Txt"會轉換成"TEXTFILE.TXT"。
  3. 長檔名只會保留基本名稱的首6位半形字元,以一個~號連接著,再以一個數字作結尾以作識別,最後以副檔名的首3位字元作結束。從這個結果中再對無法使用的字元再作刪除,像(+)號會轉換成(_)號,另外這也會轉成全大寫字母。
    • 例如:"TextFile1.Mine.txt"會轉換成"TEXTFI~1.TXT";"附屬應用程式"會轉換成"附屬應~1"(或如果"TEXTFI~1.TXT"已經存在的情況下,會儲存作"TEXTFI~2.TXT")。"ver +1.2.text"會轉換成"VER_12~1.TEX"。
  4. 從Windows 2000開始,如果最少4個檔案或資料夾的短檔名的首6個字元是相同的話,該長檔名會另行將檔名轉作基本名稱的首2位字元(或如果基本名稱只有1個字元的話,便全取檔案名稱1個字元),再以4位十六進位的檔案名稱的切細值連接上,接著~號,再接著一位的數字及.號,最後以首3位的副檔名作為結尾。結果,相比之中,這檔名是已經分拆及改用全大寫字母。
    • 例如:"TextFile.Mine.txt"會轉換成"TE021F~1.TXT"。

8.3的應用

ISO 9660檔案系統中(多數使用於CD光碟上)在基本的等級1中也有相似的限制,在此再加上一些附加的限制,例如目錄名稱不能含有副檔名,另外檔案名稱不可含有一些半形的字元(通常是连接号等的附號)。等級2的系統可以容許不多於31個字元的檔案名稱,這對於Mac OS檔案名稱的兼容性有所增加。

有笑话称,在微軟反壟斷案事件中,MICROS~1及MICROS~2被用來代表微軟分割後可能出現的公司。[1]

参见

引用

  1. ^ 存档副本. [2014-04-13]. (原始内容存档于2012-02-22).