文章目录
1、二进制文件简介
二进制文件中 的数据不是 字符数据 , 而是以 二进制形式 存储的 字节数据 , 有特定的格式 , 如 : PNG 头文件 , 有特定的文件头 , 数据位 , 校验位 , 使用 文本编辑器 打开都是乱码 ;
二进制文件 是 将内存中 二进制数据 不加转换 直接存储到 文件 中 , 二进制文件又称为 内存数据映射文件 ;
对 二进制文件 的 读写访问操作 ,
2、以二进制形式打开文件参数
以二进制形式打开文件参数 :
使用 类的 read 和 类的 write 函数 , 可以对二进制文件进行读写操作 , 函数原型如下 :
1、二进制文件读取 - read() 函数
是 C++ 标准库中用于处理输入流的类 , 它提供了许多方法来读取数据 ;
ifstream 继承 istream 类 ;
函数是 类的一个成员函数 , 用于从输入流中读取指定长度的数据并存储到指定的缓冲区中 , 函数原型如下 :
这个函数有两个参数:
read() 函数 的 返回值是 一个 istream 对象的引用 , 可以用于链式调用 ;
2、获取实际读取的字节数 - gcount() 函数
read() 函数可以指定要读取的字节数 , 但实际读取的字节数需要调用 ifstream 的 gcount() 函数来获取 , 其函数原型如下 :
ifstream 的 gcount() 函数 返回一个 streamsize 类型的值 , 表示上次 输入操作 读取的字节数 ;
gcount() 函数返回的是上一次输入操作读取的字节数 , 而不是当前输入位置的位置 ;
3、代码示例 - 文件读取
在下面的代码中 , 先在 资源文件 中创建二进制文件 1.bin ;
然后 以二进制形式打开 1.bin 二进制文件 ,
最后 , 调用 read() 函数 , 读取文件中的数据 ;
代码示例 :
执行结果 :
1、二进制文件写出 - write() 函数
ostream 是 C++ 标准库中用于处理输出流的类 , 它提供的 write() 函数 用于将指定长度的数据写入输出流 ;
ofstream 继承 ostream 类 ;

ostream 类的 write() 函数的原型如下 :
2、验证输出是否出错 - fail() 函数
fail() 函数是 ostream 类中的一个成员函数 , 用于 验证输出是否出错 ;
ostream 类的 fail() 函数的原型如下 :
fail() 函数 返回一个布尔值 , 表示输出流是否处于失败状态 ;
如果输入流没有发生错误 , 返回 false ;
如果输出流发生错误 , 返回 true ; 例如 : 无法打开文件或写入数据失败 , 则 fail() 函数将返回 true ;
fail() 函数可以与其他 ostream 类的成员函数结合使用 ; 例如 : fail() 和 clear() 函数可以用于清除输出流的错误状态 ;
3、代码示例 - 二进制文件写入
代码示例 :
执行结果 :
写出的文件内容 :

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/152817.html