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


Posted in PHP onFebruary 27, 2017

从文件编码的方式来看,文件可分为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,文本模式会认为这是文件结束符,也就是二进制模型不会对文件进行处理,而文本方式会按一定的方式对数据作相应的转换。

以上这篇老生常谈文本文件和二进制文件的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP创建PDF中文文档
Oct 09 PHP
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
Sep 02 PHP
php通过array_merge()函数合并两个数组的方法
Mar 18 PHP
php统计数组元素个数的方法
Jul 02 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
实例讲解PHP设计模式编程中的简单工厂模式
Feb 29 PHP
CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
Nov 21 PHP
php+jQuery实现的三级导航栏下拉菜单显示效果
Aug 10 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 PHP
PHP基于curl模拟post提交json数据示例
Jun 22 PHP
php访问对象中的成员的实例方法
Nov 17 PHP
php实现数据库的增删改查
Feb 26 #PHP
php查询及多条件查询
Feb 26 #PHP
php批量删除操作代码分享
Feb 26 #PHP
浅谈PHP的反射API
Feb 26 #PHP
CentOS 上搭建 PHP7 开发测试环境
Feb 26 #PHP
php封装的验证码类分享
Feb 26 #PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
Feb 25 #PHP
You might like
使用PHP数组实现无限分类,不使用数据库,不使用递归.
2006/12/09 PHP
php5中date()得出的时间为什么不是当前时间的解决方法
2008/06/30 PHP
javascript 小型动画组件与实现代码
2010/06/02 PHP
PHP加密扩展库Mcrypt安装和实例
2013/11/10 PHP
PHP抽奖算法程序代码分享
2015/10/08 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
thinkPHP5分页功能实现方法分析
2017/10/25 PHP
在 Laravel 中动态隐藏 API 字段的方法
2019/10/25 PHP
跨浏览器开发经验总结(四) 怎么写入剪贴板
2010/05/13 Javascript
js 延迟加载 改变JS的位置加快网页加载速度
2012/12/11 Javascript
js判断生效时间不得大于失效时间的思路及代码
2013/04/23 Javascript
上传的js验证(图片/文件的扩展名)
2013/04/25 Javascript
非常实用的12个jquery代码片段
2015/11/02 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
BootstrapValidator超详细教程(推荐)
2016/12/07 Javascript
解决vue 引入子组件报错的问题
2018/09/06 Javascript
JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作整理总结
2019/06/27 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
2020/02/01 jQuery
微信小程序用户盒子、宫格列表的实现
2020/07/01 Javascript
[27:53]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS iG
2014/05/26 DOTA
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
[02:33]DOTA2亚洲邀请赛趣味视频之吐真话筒
2018/03/31 DOTA
python文件操作整理汇总
2014/10/21 Python
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
深入浅出学习python装饰器
2017/09/29 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
Python中turtle库的使用实例
2019/09/09 Python
python3 写一个WAV音频文件播放器的代码
2019/09/27 Python
使用Python函数进行模块化的实现
2019/11/15 Python
Python-numpy实现灰度图像的分块和合并方式
2020/01/09 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
Python建造者模式案例运行原理解析
2020/06/29 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
初中地理教学反思
2014/01/11 职场文书
测试工程师程序员求职信范文
2014/02/20 职场文书
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang