老生常谈文本文件和二进制文件的区别

yipeiwu_com6年前PHP代码库

从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种。

ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为:

ASC码:  00110101 00110110 00110111 00111000
      ↓      ↓       ↓        ↓
十进制码: 5     6      7      8 共占用4个字节。ASCII码文件可在屏幕上按字符显示, 例如源程序文件就是ASCII文件,用DOS命令TYPE可显示文件的内容。 由于是按字符显示,因此能读懂文件内容。

二进制文件是按二进制的编码方式来存放文件的。

例如, 数5678的存储形式为: 00010110 00101110只占二个字节。二进制文件虽然也可在屏幕上显示, 但其内容无法读懂。C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。 输入输出字符流的开始和结束只由程序控制而不受物理符号(如回车符)的控制。

因此也把这种文件称作“流式文件”。

一个文件可以以文本模式或二进制模式打开,这两种的区别是:在文本模式中回车被当成一个字符'/n',而二进制模式认为它是两个字符0x0D,0x0A;如果在文件中读到0x1B,文本模式会认为这是文件结束符,也就是二进制模型不会对文件进行处理,而文本方式会按一定的方式对数据作相应的转换。

以上这篇老生常谈文本文件和二进制文件的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

php删除二维数组中的重复值方法

实例如下所示: //二维数组去掉重复值 public function a_array_unique($array){ $out = array(); foreach (...

php出现内存位置访问无效错误问题解决方法

配置环境如下: Win2003SP2+IIS6+php5.26+mysql5.0.51a+zend3.3a+PhpMyAdmin2.11.7.1 PHP执行方式:isapi。Mysql为...

php中opendir函数用法实例

本文实例分析了php中opendir函数用法。分享给大家供大家参考。具体如下: opendir语法:opendir(path,context) 目录,功能说明:打开目录句柄,opendi...

PHP中使用addslashes函数转义的安全性原理分析

本文实例讲述了PHP中使用addslashes函数转义的安全性原理分析。分享给大家供大家参考。具体分析如下: 先来看一下ECshop中addslashes_deep的原型 复制代码 代码...

php数组中删除元素的实现代码

复制代码 代码如下: <?php $arr = array('a','b','c','d'); unset($arr[1]); print_r($arr); ?> prin...