作用
播报
编辑
有些文件格式被设计用于存储特殊的数据,例如:图像文件中的JPEG文件格式仅用于存储静态的图像,而GIF既可以存储静态图像,也可以存储简单动画;Quicktime格式则可以存储多种不同的媒体类型。文本类的文件有:txt文件一般仅存储简单没有格式的ASCII或Unicode的文本;HTML文件则可以存储带有格式的文本;PDF格式则可以存储内容丰富的,图文并茂的文本。
同一个文件格式,用不同的程序处理可能产生截然不同的结果。例如Word 文件,用Microsoft Word观看的时候,可以看到文本的内容,而以无格式方式在音乐播放软件中播放,产生的则是噪声。一种文件格式对某些软件会产生有意义的结果,对另一些软件来看,就像是毫无用途的数字垃圾。
从程序的角度来看,文件是数据流,文件系统为每一种文件格式规定了访问的方法。例如:元数据。不同的操作系统都习惯性的采用各自的方式解决这个问题,每种方式都有各自的优缺点。
当然,现代的操作系统和应用程序,一般都需要这里所讲述的方法处理不同的文件。
许多文件格式都有公开的、不同程度规范或者建议的格式。这些规范或者建议描述了数据如何编码,如何排列。有时也规定了是否需要特定的电脑程序读取或处理。有两种情况下,文件格式没有公开。第一种情况是:开发者将文件格式视作商业秘密不愿公开;第二种情况是:开发者不愿或花去很少的时间用于规范文档。
需要注意的是,使用不公开的文件格式可能会带来额外的成本。要了解这类文件格式或者需要通过对获得的文件进行逆向工程,或者通过向开发者付费来获得文件的格式。第二种方式中往往还需要与开发者签订不扩散协议。不论怎样两种方式都是费时,费钱的。
用扩展名识别文件格式的方式最先在数字设备公司的CP/M操作系统被采用。而后又被DOS和Windows操作系统采用。扩展名是指文件名中,最后一个点(.)号后的字母序列。例如,HTML文件通过.htm或.html扩展名识别;GIF图形文件用.gif扩展名识别。在早期的FAT文件系统中,扩展名限制只能是三个字符,因此尽管绝大多数的操作系统已不再有此限制,许多文件格式仍然采用三个字符作扩展名。因为没有一个正式的扩展名命名标准,所以,有些文件格式可能会采用相同的扩展名,出现这样的情况就会使操作系统错误地识别文件格式,同时也给用户造成困惑。
扩展名方式的一个特点是,更改文件扩展名会导致系统误判文件格式。例如,将文件名.html 简单改名为文件名.txt会使系统误将HTML文件识别为纯文本格式。尽管一些熟练的用户可以利用这个特点,但普通用户很容易在改名时发生错误,而使得文件变得无法使用。因此,现代的有些操作系统管理程序,例如Windows Explorer加入了限制向用户显示文件扩展名的功能。
一种广泛应用在UNIX及其派生的操作系统上的方法是将一个特殊的数字存放在文件的特定位置里。最初这个数字一般是文件开始处的2个字节。一般是将任何字符序列都可以作为特征签名。例如GIF图形件是将文件开始处的六个字节作为特征签名的,它可以是GIF87a或者GIF89a。但也有些文件很难通过这种方式识别,比如HTML文件。
采用这种方式可以更好的防止对文件格式发生误判,并且特征签名可以给出关于文件格式的更详细的信息。这种方式的缺点是效率较低。特别是显示大量的文件时,由于每种特征签名具有不同的识别方式,将消耗系统大量的资源对文件格式进行判断。扩展名和后面将提到的元数据方式由于采用固定格式数据,可进行快速匹配。应用程序往往利用特征签名来判断文件是否完整和有效。
最后一种方式将文件格式信息存放到磁盘特定的位置。
类型码
播报
编辑
苹果计算机的文件系统为每个文件的目录入口都存储了创建者和类型码。这些代码称作OSType。例如一个苹果计算机创建的文件的创建者会是AAPL而类型也是APPL。RISC 操作系统采用类似的系统,用一个12比特位的数字索引描述表。例如:十六进制的FF5代表PoScript,文件类型就是PostScript文件。
HPFS, NTFS, FAT12, FAT16, 及FAT32文件系统可以保存额外的文件属性信息。它是由名字和与名字对应的值组成。例如扩展属性“.type”用于判断文件的类型,可能是值包括“Plain Text”或“HTML document”。一个文件可以有多种属性。
多用途网际邮件扩充(外国语缩写:MIME)广泛地用于许多Internet有关的应用,并且正在被广泛地采用到其他的应用中。最初在RFC 1341中说明。MIME用一个类型/自类型表示文件的类型。例如:text/html代表文件是HTML文件,image/gif表示GIF文件。MIME最初是用于表示电子邮件的附件的类型。
- 
AAC:MPGE-4高级音频编码
 - 
ACC:苹果设备的专属音乐格式
 - 
ACE:Ace压缩档案格式
 - 
ACT:Microsoft office助手文件
 - 
AIN:AIN压缩存档
 - 
ANI:Windows系统中的动画光标
 - 
APK:AndroidPackage /Android(安卓)安装包,APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装
 - 
ARC:LH ARC的压缩档案文件
 - 
ASF:Microsoft高级流媒体格式文件
 - 
ASM:汇编语言源文件,Pro/E装配文件
 - 
AVI:Windows视频文件
 - 
A3L:Authorware 3.x库文件
 - 
A4L:Authorware 4.x库文件
 - 
A5L:Authorware 5.x库文件
 - 
A3M,A4M:Authorware Macintosh未打包文件
 - 
A3W,A4W,A5W:未打包的Authorware Windows文件
 
- 
BAK:备份文件
 - 
BAS:Visual Basic Module VB6模块文件
 - 
BDICT:百度输入法词库文件
 - 
BIN:二进制文件,其用途依系统或应用而定
 - 
BINHex:苹果的一种编码格式
 - 
BOOK:Adobe FrameMaker Book文件
 - 
BOX:Lotus Notes的邮箱文件
 - 
BPL:Borlard Delph 4打包库
 - 
BPS:百度输入法皮肤文件
 - 
BSP:Quake图形文件
 - 
BUN:CakeWalk 声音捆绑文件(一种MIDI程序)
 
- 
C:C代码文件
 - 
C0l:台风波形文件
 - 
CAB:Microsoft压缩档案文件
 - 
CAD:Softdek的Drafix CAD文件
 - 
CAM:Casio照相机格式
 - 
CAP:压缩音乐文件格式
 - 
CAS:逗号分开的ASCⅡ文件
 - 
CCH:Corel图表文件
 - 
CCO:CyberChat数据文件
 - 
CCT:Macromedia Director Shockwave投影
 - 
CDA:CD音频轨道
 - 
CDI:Philip的高密盘交互格式
 - 
CDM:Visual dBASE自定义数据模块文件
 - 
CDR:CorelDRAW绘图文件;原始音频CD数据文件
 - 
CDT:CorelDRAW模板
 - 
CFG:配置文件
 - 
CGM:计算机图形元文件
 - 
CH:OS/2配置文件
 - 
CHI:.CHM文件的一个索引,用来支持对应的.CHM文件中的搜索功能,要和同名的.CHM文件放到一起用
 - 
CHM:HTML格式的帮助文档
 - 
CHP:Ventura Publisher章节文件
 - 
CHR:字符集(字体文件)
 - 
CHT:ChartViem文件;Harvard Graphics矢量文件
 - 
CIF:Adaptec CD 创建器 CD映像文件
 - 
CIL:Clip Gallery下载包
 - 
CIM:SimCity 2000文件
 - 
CIN:OS/2改变控制文件用于跟踪INI文件中的变化
 - 
CLASS:Java类文件
 - 
CLP:Windows 剪贴板文件
 - 
CLL:Crick Software Clicker文件
 - 
CLS:Visual Basic类文件
 - 
CPP:C++代码文件
 - 
CPR:Corel提供说明书文件
 - 
CPT:Corel 照片-绘画图像
 - 
CST:Macromedia Director Cast文件
 - 
CTL:Visual Basic User Control VB6.0用户自定义控件
 - 
CTX:Visual Basic User Control Binary FileVB6.0用户自定义控件二进制缓存文件
 - 
CUR:Windows光标文件
 
- 
DAT:数据流格式,DAT文件也是MPG格式的,是VCD刻录软件将符合VCD标准的MPEG-1文件自动转换生成的。也有数据文件的后缀名为.DAT,文件格式不确定,任何文件的后缀名都可以设为.DAT,因为读取数据不是从后缀名判断的,而是从文件格式判断
 - 
DB:数据库文件,Thumbs.db是缩略图缓存
 - 
DBF:dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel97打开);Oracle 8.1.x表格空间文件
 - 
DBX:DataBearn图像;Microsoft Visual FoxPro表格文件
 - 
DCF:数码照相机统一记录格式,DCF 也有音频格式
 - 
DCX:Microsoft Visual FoxPro数据库容器;基于PCX的传真图像;宏
 - 
DIR:MacromediaDirector文件
 - 
DLF:一种INI配置文件格式的语言文件
 - 
DLL:动态链接库
 - 
DOC: Microsoft Word 2003文档文件
 - 
DOCX:Microsoft Word 2007文档文件
 - 
Perfect文档、Microsoft:Word文档;DisplayWrite文档
 - 
DOT:Microsoft Word文档模板
 - 
DPL:Borland Delph 3压缩库
 - 
DRV:驱动程序
 - 
DRW:Micrografx Designer/Draw;Pro/E绘画文件
 - 
DSF:Micrografx Designer VFX文件
 - 
DSG:DOOM保存的文件
 - 
DSM:Dynamic Studio音乐模块(MOD)文件
 - 
DSP:Microsoft Developer Studio工程文件
 - 
DSQ:Corel QUERY(查询)文件
 - 
DST:刺绣机图形文件
 - 
DSW:Microsoft Developer Studio工作区文件
 - 
DTA:World Bank(世界银行)的STARS数据文件
 - 
DTD:SGML文档类型定义(DTD)文件
 - 
DTED:地面高度数字数据(图形的数据格式)文件
 - 
DTF:Symantec Q&A相关的数据库数据文件
 - 
DTM:DigiTrakker模块文件
 - 
DUN:Microsoft拔号网络导出文件
 - 
DV:数字视频文件(MIME)
 - 
DWG:AutoCAD工程图文件;AutoCAD或Generic CADD老版本的绘图格式
 - 
DX:JavaScript文件,类似BAT文件执行后的样子,需要有JS文件支持
 - 
DXR:Macromedia Director受保护(不可编辑)电影文件
 
- 
E:易语言代码源文件
 - 
EC:易语言模块文件
 - 
EDA:Ensoniq ASR磁盘映像
 - 
EDD:元素定义文档(FrameMaker+SGML文档)
 - 
EDE:Ensoniq EPS磁盘映像
 - 
EDK:Ensoniq KT磁盘映像
 - 
EDQ:Ensoniq SQ1/SQ2/Ks32磁盘映像
 - 
EDS:Ensoniq SQ80磁盘映像
 - 
EDV:Ensoniq VFX-SD磁盘映像
 - 
EFA:Ensoniq ASR文件
 - 
EFE:Ensoniq EPS文件
 - 
EFK:Ensoniq KT文件
 - 
EFQ:Ensoniq SQ1/SQ2/Ks32文件
 - 
EFS:Ensoniq SQ80文件
 - 
EFV:Ensoniq VFX-SD文件
 - 
EGG:压缩文件
 - 
EMD:ABT扩展模块
 - 
EMF:Windows增强元文件
 - 
EML:Microsoft Outlook Express邮件消息(MIME RTC822)文件
 - 
EOT:是一种压缩字库,目的是解决在网页中嵌入特殊字体的难题,只有微软的IE浏览器支持
 - 
EXE:可执行文件(程序)
 
- 
FAV:Microsoft Outlook导航条
 - 
FAX:传真类型图像
 - 
FCD:虚拟CD-ROM
 - 
FDF:Adobe Acrobat表单文档文件
 - 
FLA:Macromedia Flash动画源文件
 - 
FLAC:无损音频压缩编码
 - 
FLV:Flash视频文件
 - 
FNE:易语言的其中一种支持库文件,用于在易语言中装载和提供对应的命令和方法,易语言支持库还有FNR格式、NPK格式以及LPK文件包等。
 - 
FND:Microsoft Explorer保存的搜索文件(Find applet)
 - 
FNR:FNR文件是易语言的其中一种支持库文件,用于在易语言中装载和提供对应的命令和方法,但是与FNE格式支持库不同的是,FNR不带编辑信息,有运行支持代码的支持库。
 - 
FON:系统字体
 - 
FRM:Visual Basic Form File VB6.0窗体文件
 - 
FRT:Microsoft FoxPro报表文件
 - 
FRX:Visual Basic表单文本;Microsoft FoxPro报表文件
 - 
FXP:经Microsoft FoxPro编译的源文件
 
- 
H:C/C++ Header 头文件
 - 
HEX:Macintosh BinHex2.0文件
 - 
HLP:帮助文件;Date CAD Windows帮助文件
 - 
HPP:C++程序头文件
 - 
HQX:Macintosh BinHex 4.0文件
 - 
HTT:Microsoft超文本模板
 - 
HTX:扩展HTML模板
 
- 
ICO:Windows图标
 - 
Express文件
 - 
IMG:GEM映像
 - 
INC:Include File 引用文件,ASP中也会用到
 - 
INF:Windows操作系统下用来描述设备或文件等数据信息的文件
 - 
INRS:INRS远程通信声频
 - 
INS:InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备
 - 
IOF:Findit文档
 - 
IQY:Microsoft Internet查询文件
 - 
ISO:根据ISD 9660有关CD-ROM文件系统标准列出CD-ROM上的文件
 - 
ISP:X-Internet签字文件
 - 
ISS:Inno Setup 项目脚本文件 (Inno Setup 是一种安装包生成工具)
 - 
IST:数字跟踪设备文件
 - 
ISU:InstallShield卸装脚本
 - 
IT:脉冲跟踪系统音乐模块(MOD)文件
 - 
ITI:脉冲跟踪系统设备
 - 
ITS:脉冲跟踪系统抽样,Internet文档位置
 - 
IV:Open Inventor中使用的文件格式
 - 
IVD:超过20/20微观数据维数或变量等级文件
 - 
IVP:超过20/20的用户子集配置文件
 - 
IVT:超过20/20表或集合数据文件
 - 
IVX:超过20/20微数据目录文件
 - 
IW:Idlewild屏幕保护程序
 - 
IWC:Install Watch文档
 
- 
KAR:卡拉OK MIDI文件(文本+MIDI)
 - 
KEY:授权文件
 - 
KINE:巧影视频文件
 
- 
LAB:Visual dBASE标签文件
 - 
LBT,LBX:Microsoft FoxPro标签文件
 - 
LDB:Microsoft Access加锁文件
 - 
LHA:LZH更换文件后缀
 - 
LIB:Windows系统中的库文件,分为两种,静态库与动态库
 - 
LIC:License 用户许可证书文件
 - 
LNK:快捷方式文件
 - 
LOG:日志文件
 - 
LST:列表文件 /MASM Listing
 - 
LUA:LUA脚本语言文件
 - 
LZH:LH ARC压缩档案
 
- 
M1V:MPEG相关文件(MIME”mpeg”类型)
 - 
M3D:Corel Motion 3D动画文件
 - 
M3U:MPEG URL(MIME声音文件)
 - 
MAM:Microsoft Access宏
 - 
MAQ:Microsoft Access查询文件
 - 
MAR:Microsoft Access报表文件
 - 
MBX:Microsoft Outlook保存email格式;Eudora邮箱
 - 
MCW:Microsoft Word的Macintosh文档
 - 
MDB:Microsoft Access数据库
 - 
MDN:Microsoft Access空数据库模板
 - 
MDW:Microsoft Access工作组文件
 - 
MID:MIDI音乐
 - 
MKV:视频文件
 - 
MMM:Microsoft多媒体电影
 - 
MOV:QuickTime for Windows视频文件
 - 
MP2:第二层MPEG音频文件
 - 
MP3:第三层MPEG音频文件
 - 
MP4:视频或音频文件
 - 
MPA:MPEG相关文件,MIME“mpeg类型”
 - 
MPP:Microsoft工程文件;CAD绘图文件格式
 - 
MPR:Microsoft FoxPro菜单(已编译)
 - 
MSI:Windows 安装器包
 - 
MSN:Microsoft 网络文档;Descent Mission文件
 
- 
OBD:Microsoft Office活页夹
 - 
OBJ:对象文件
 - 
OBZ:Microsoft Office活页夹向导
 - 
OCX:Microsoft对象链接与嵌入定制控件
 - 
ODS:Microsoft Outlook Express邮箱文件
 - 
OFT:Microsoft Outlook模板
 - 
OGG:音频文件
 - 
OPX:OPL扩展DLL(动态链接库)
 - 
OSS:Microsoft Office查找文件
 
- 
PAL:压缩文件
 - 
PART:GoZilla部分下载文件
 - 
PAS:Pascal源代码
 - 
PCS:PICS动画文件
 - 
PDF:Adobe Acrobat
 - 
PEM:OpenSSL 使用 PEM 文件格式存储证书和密钥。PEM 实质上是 Base64 编码的二进制内容,再加上开始和结束行BEGIN CERTIFICATE、ENDCERTIFICATE,在这些标记外面可以有额外的信息,如编码内容的文字表示。文件是 ASCII 的,可以用任何文本编辑程序打开
 - 
PHP,PHP3:包含有PHP脚本的HTML网页
 - 
PHTML:包含有PHP脚本的HTML网页;由Perl分析解释的HTML
 - 
PLR:游戏terraria玩家存档文件
 - 
PM5:Pagemaker 5.0文件
 - 
PM6:Pagemaker 6.0文件
 - 
PNG:可移植图像文件
 - 
PPS:Microsoft Powerpoint幻灯片放映
 - 
PRF:Windows系统文件,Macromedia导演设置文件
 - 
PSM:Protracker Studio模型格式;Epic游戏的源数据文件
 - 
PST:Microsoft Outlook个人文件夹文件
 - 
PWL:Windows 95口令列表文件
 - 
PY: Python源代码
 - 
PYW:Python源代码
 - 
PYC:python二进制文件
 - 
PYO:是跟pyc类似的python优化编码后的文件
 - 
PYD:是其他编程语言写成的能被python调用的扩展
 
- 
QIF:QuickTime相关图像(MIME);Quicken导入文件
 - 
QPYD:QQ拼音输入法词库文件
 - 
QPYS:QQ拼音输入法皮肤文件
 - 
QTI,QTIF:QuickTime相关图像
 - 
QTP:QuickTime优先文件
 - 
QTS:Mac PICT图像文件;QuickTime相关图像
 - 
QTX:QuickTime相关图像
 - 
QY2:华为音乐自研音频格式
 


