二进制文件:"二进制文件"本来就是一种似是而非的叫法。我们知道,存在有种类繁多的不同类型(格式)的文件,如文本文件,视频文件,图像文件,数据库文件...., 文件格式的具体定义取决于应用。不同的文件格式的主要差别之一就是信息的编码不同,而编码总归都是"二进制"的,从这个方面看,所有的都是"二进制文件 "。而我们常讲的"二进制文件"并不是这个意思,它是想对于"文本文件"而言的,也就是说,所有非文本文件(即非ASCII编码)都被称为"二进制文件 ".在这里很容易提出疑问,文本文件只是文件格式的一种,所有格式的文件应该都是平等的,为什么在这里把它单独提出来作为一种特殊的参照呢?原因很简单, 那就是无论从应用时间的久远程度还是应用的普遍性上,ASCII编码的文件都是其他格式的文件所不能比拟的。
可以简单理解成:
只由ASCII字符构成的文件称为[b]文本文件[/b](text files),所有其他的文件则称为[b]二进制文件[/b]。
所谓的ASII字符构成的文件,就是用一个唯一的字节大小的整数值来表示每个字符,比如字符"i"的ASCII值为105,"c"为99,“\n”为10 等等。更通俗的讲,在文本文件中,你看到的是一个个的字符“a”,“b”,“c”,他们都由一个唯一的整数值表示,表现在内存上,就是整数值97,98, 99。而二进制文件没有字符概念,它是一个个的值,当然,你认为这个值代表什么,它就可以代表什么。
二进制对象:计算机中,一个大型二进制对象通常是一个大型的文件,例如一个
图片或
声音文件。而这些文件不得不以一种特殊的方式存放在数据库中。按照
Eric Raymond的解释,大型二进制对象的意义在于,当文件的处理者(例如
数据库管理工具)
无法识别文件的
格式以致无法处理该文件时,就把它作为大型二进制对象来处理。也有人说大型二进制对象实际上指代的是大型数据对象。一个需要处理大型二进制对象的应用程序是存储了大型多
媒体对象(例如
电影和
电视节目)的
数据存储器。