档案格式
概述
有些文件格式被设计用于存储特殊的数据,例如:
视频文件中的JPEG文件格式仅用于储存静态的视频,
而GIF既可以储存静态视频,也可以存储简单动画;
Quicktime格式则可以存储多种不同的媒体类型。
文本类的文件有:
同一个文件格式,用不同的程序处理可能产生截然不同的结果。例如Word 文件,用Microsoft Word观看的时候,可以看到文本的内容,而以无格式方式在音乐播放软体中播放,产生的则是噪声。一种文件格式对某些软体会产生有意义的结果,对另一些软体来看,就像是毫无用途的数位垃圾。
规范
许多文件格式都有公开的、不同程度规范或者建议的格式。这些规范或者建议描述了数据如何编码,如何排列。有时也规定了是否需要特定的计算机程序读取或处理。有两种情况下,文件格式没有公开。第一种情况是:开发者将文件格式视作商业秘密不愿公开;第二种情况是:开发者不愿或花去很少的时间用于规范文档。
需要注意的是,使用不公开的文件格式可能会带来额外的成本。要了解这类文件格式,或者需要通过对获得的文件进行逆向工程,或者通过向开发者付费来获得文件的格式。第二种方式中往往还需要与开发者签订不扩散协议。不论怎样两种方式都是费时,费钱的。
识别文件的类型
从程序的角度来看,文件是数据流,文件系统为每一种文件格式规定了访问的方法。例如:元数据。不同的操作系统都习惯性的采用各自的方式解决这个问题,每种方式都有各自的优缺点。
当然,现代的操作系统和应用程序,一般都需要这里所讲述的方法处理不同的文件,
扩展名
用扩展名识别文件格式的方式最先在数字设备公司的CP/M操作系统被采用。而后又被DOS和Windows操作系统采用。扩展名是指文件名中,最后一个点(.)号后的字母序列。例如,HTML文件通过.htm或.html扩展名识别;GIF图形文件用.gif扩展名识别。在早期的FAT文件系统中,扩展名限制只能是三个字符,因此尽管现在绝大多数的操作系统已不再有此限制,许多文件格式至今仍然采用三个字符作扩展名。因为没有一个正式的扩展名命名标准,所以,有些文件格式可能会采用相同的扩展名,出现这样的情况就会使操作系统错误地识别文件格式,同时也给用户造成困惑。
扩展名方式的一个特点是,更改文件扩展名会导致系统误判文件格式。例如,将filename.html简单改名为filename.txt会使系统误将HTML文件识别为纯文本格式。尽管一些熟练的用户可以利用这个特点,但普通用户很容易在改名时发生错误,而使得文件变得无法使用。因此,现代的有些操作系统管理程序,例如Windows Explorer加入了限制向用户显示文件扩展名的功能。
特征签名
一种广泛应用在UNIX及其派生的操作系统上的方法是将一个特殊的数字存放在文件的特定位置里。最初这个数字一般是文件开始处的2个字节。现在一般是将任何可以独一无二字符序列都可以作为特征签名。例如GIF图形文件是将文件开始处的六个字节作为特征签名的,它可以是GIF87a或者GIF89a。但也有些文件很难通过这种方式识别,比如HTML文件。
采用这种方式可以更好的防止对文件格式发生误判,并且特征签名可以给出关于文件格式的更详细的信息。这种方式的缺点是效率较低。特别是显示大量的文件时,由于每种特征签名具有不同的识别方式,将消耗系统大量的资源对文件格式进行判断。扩展名和后面将提到的元数据方式由于采用固定格式数据,可进行快速匹配。应用程序往往利用特征签名来判断文件是否完整和有效。
元数据
最后一种方式将文件格式信息存放到磁盘特定的位置。
采用这种方式,元数据与文件本身份开存放。此法的缺点是可移植性差。因为不同的文件系统之间元数据可能需要转换。
苹果Macintosh的类型码
苹果计算机的文件系统为每个文件的目录入口都存储了创建者和类型码。这些代码称作OSType。例如一个苹果计算机创建的文件的创建者会是AAPL而类型也是APPL。RISC操作系统采用类似的系统,用一个12比特位的数字索引描述表。例如:十六进制的FF5代表PoScript,文件类型就是PostScript文件。
IBM/Microsoft的扩展文件属性
HPFS,NTFS,FAT12, FAT16,及FAT32文件系统可以保存额外的文件属性信息。它是由名字和与名字对应的值组成。例如扩展属性“.type”用于判断文件的类型,可能是值包括“Plain Text”或“HTML document”。一个文件可以有多种属性。
Unix的扩展文件属性
ext2,ext3,ReiserFS版本3,XFS,JFS和FFS文件系统允许存储扩展的文件属性。它是由名字和与名字对应的值组成。名字应当是独一无二的。
MIME类型
MIME广泛地用于许多Internet有关的应用,并且正在被广泛地采用到其他的应用中。最初在RFC1341中说明。MIME用一个类型/子类型表示文件的类型。例如:text/html代表文件是HTML文件,image/gif表示GIF文件。MIME最初是用于表示电子邮件的附件的类型。
参见
音频文件格式
文档文件格式
化学文件格式
文件扩展名
自由文件格式
图形文件格式
文件格式列表
目标文件格式
视频文件格式
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。
- 有价值
- 一般般
- 没价值