C/C++中二进制文件和顺序读写有什么用
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章主要介绍C/C++中二进制文件和顺序读写有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!概述二进制文件不同于文本文件, 它可以用于任何类型的文件 (包括文本文件)
千家信息网最后更新 2025年01月18日C/C++中二进制文件和顺序读写有什么用
这篇文章主要介绍C/C++中二进制文件和顺序读写有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
概述
二进制文件不同于文本文件, 它可以用于任何类型的文件 (包括文本文件).
二进制 vs ASCII
对于数值数据, ASCII 形式与二进制形式不同. ASCII 文件直观, 便于阅读, 但一般占存储空间较多, 而且需要花时间转换. 二进制文件是计算机的内部形式, 节省空间且不需要转换, 但不能直观显示.
对于字符信息, 在内存中是以 ASCII 代码形式存放, 无论用 ASCII 文件输出还是用二进制文件输出, 形式是一样的.
二进制写入
#include#include using namespace std;int main() { int x = 12345; ofstream outfile("binary.txt", ios::binary); outfile.write((char*)&x, 2); // 写入 outfile.close(); // 释放 return 0;}
输出结果:
ASCII 写入
将 int x = 12345 写入文件.
#include#include using namespace std;int main() { int x = 12345; ofstream outfile("ASCII.txt"); outfile << x << endl; // 写入 outfile.close(); // 释放 return 0;}
输出结果:
read 和 write 读写二进制文件
打开方式:
ofstream a("file1.dat", ios::out | ios::binary);ifstream b("file2.dat",ios::in | ios::binary);
文件读写方式:
istream& read(char *buffer,int len);ostream& write(const char * buffer,int len);
char *buffer 指向内存中一段存储空间
int len 是读写的字节数
例子:
将 p1 指向的空间中 50 个字节存入文件对象 a:
a.write(p1,50)
从文件对象 b 读出 30 个字节, 存址指向空间:
b.read(p2,30)
案例一
将数据以二进制的形式存放在磁盘中.
#include#include #include "Student.h"using namespace std;int main() { Student stud[2] = { {01, "Little White"}, {01, "Big White"} }; ofstream outfile("student.dat", ios::binary); if(!outfile){ cerr << "open error" << endl; exit(1); // 退出程序 } for (int i = 0; i < 2; ++i) { outfile.write((char*)&stud[i], sizeof(stud[i])); } cout << "任务完成, 请查看文件" << endl; outfile.close(); return 0;}
案例二
将二进制文件中的数据读入内存.
#include#include #include "Student.h"using namespace std;int main() { Student stud[2]; ifstream infile("student.dat", ios::binary); if(!infile){ cerr << "open error" << endl; exit(1); // 退出程序 } // 读取数据 for (int i = 0; i < 2; ++i) { infile.read((char*)&stud[i], sizeof(stud[i])); } infile.close(); // 显示数据 for (int i = 0; i < 2; ++i) { stud[i].display(); } return 0;}
以上是"C/C++中二进制文件和顺序读写有什么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
文件
二进制
形式
数据
空间
输出
内存
字节
指向
顺序
直观
内容
对象
文本
方式
案例
程序
篇文章
结果
存储
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
段攻网络技术
建站数据库怎么导入
域服务器权限管理
规划局网络安全自查报告
软件应用软件开发工程师
宁波余姚市戴尔塔式服务器
常熟正规网络技术资质
纵月主服务器
阿里邮箱设置服务器
文法学院常用数据库
网络安全引导舆论
c 网络技术
数据库表比对
大同网络技术产品介绍
丝路传说数据库架设
常规网络安全调试
csgo服务器维护
数据库收录信息的基本要求
网络技术推广哪个行业
合肥一谈网络技术
云服务器的英语
重装了sql 系统数据库
欧盟网络安全队伍组织规模
网络技术公众号取名
模具厂数据库管理系统
大学无线传感器网络技术
小赢科技在互联网什么水平
紫康网络技术
网络安全事件 分析
阿里云数据库按量收费