二进制文件与文本文件

50 篇文章 0 订阅

文本文件编码基于字符定长,译码容易些;二进制文件编码是变长的,所以它灵活,存储利用率要高些,译码难一些(不同的二进制文件格式,有不同的译码方式)。关于空间利用率,想想看,二进制文件甚至可以用一个比特来代表一个意思(位操作),而文本文件任何一个意思至少是一个字符.

http://jiadongkai-sina-com.iteye.com/blog/945854

http://wenku.baidu.com/view/d2b6a923dd36a32d7375810e.html

C的文本方读写与二进制读写的差别仅仅体现在回车换行符的处理上.文本方式写时,每遇到一个”\n”(0AH换行符),它将其换成”\r\n”(0D0AH,回车换行),然后再写入文件;当文本读取时,它每遇到一个”\r\n”将其反变化为”\n”,然后送到读缓冲区.正因为文本方式有”\n”--”\r\n”之间的转换,其存在转换耗时.二进制读写时,其不存在任何转换,直接将写缓冲区中数据写入文件

从编程的角度来说,C中文本或二进制读写都是缓冲区与文件中二进制流的交互,只是文本读写时有回车换行的转换.所以当写缓冲区中无换行符”\n”(0AH),文本写与二进制写的结果是一样的,同理,当文件中不存在”\r\n”(0DH0AH)时,文本读与二进制读的结果一样

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值