java二进制IO流_二进制文件流读写-C++ IO流

二进制文件流读写-C++

为什么要用二进制写文件

计算机在物理上的存储是以二进制方式存储的,那么文本文件与二进制文件的区别就是物理存储上的吗?

不,而是逻辑上的,这两者只是在编码层次上有差异,文本文件是基于字符编码的文件,常见编码有ascll编码,unicode编码等,二进制文件是基于值编码的文件,可以根据应用,指定某个值是什么意思(这样一个过程可以看作是自定义编码);

文本文件基本上是定长编码的,基于字符,每个字符在具体编码中是固定的,ascll码是特定的编码,而二进制可以看作是变长编码

第一:

使用二进制文件比较节约空间,比如在存储数字,特别实型数字时,二进制更节省空间

第二:

计算机物理内存中都是用二进制无格式存储起来的,所以二进制存储到文件就更快捷,如果存储为文本文件时,需要转换的过程,所以在数据量很大时,两者的差别就会体现出来

第三:

一些比较精确的数据,使用二进制存储不会造成有效位丢失.

文本文件与二进制文件的区别:

写入数字 1,实际写入的是 字符 '1'

二进制文件:写数字1,实际写入的是整数 1 ;

1的二进制是0001 (所占4个字节,最低是1, 追高3个字节都是0);

写入二进制文件

使用文件流对象的write方法写入二进制数据.

演示

7421cd912a659129b95424a377d69e84.png

输出入一个整数:

d8cb9ac7e29ea164d968a51050f7b53a.png

读二进制文件

使用文件流的read方法.

演示

753cec097266eb2153daf377a57ea6de.png

输出结果为:

e6cdda069ce627b75b77cab3c0f79efe.png

更多技术交流欢迎来到~奇牛

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值