二进制文件与文本文件区别与联系?

任何文件的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。

简单来说,文本文件是基于字符编码的文件,常见的编码有 ASCII、UNICODE、UTF-8 编码。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自定义编码)。

从上面可以看出文本文件基本上是定长编码的,每个字符的编码长度是固定的,ASCII 码是 8 个比特的编码,UNICODE 占 16 个比特。而二进制文件可看成是变长编码的,多少个比特代表一个值,完全由你决定。就 BMP 文件而言,其头部是固定长度的文件头信息,前 2 字节用来记录文件为 BMP 格式,接下来的 8 个字节用来记录文件长度,再接下来的 4 个字节用来记录 BMP 文件头的长度。可以看出,其编码是基于值的(不定长的,2、4、8 字节长的值都有),所以 BMP 是二进制文件。

总结:基于字符编码的文件我们称之为文本文件,基于值编码的文件我们称之为二进制文件。

举例:

文本文件二进制文件
*.txt*.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值