二进制文件又名字节文件。一般指直接存放到磁盘或者内存中的文件。
二进制文件与我们平常见到的 "txt”文件在本质上没有什么差别,后者比前者多了一个编码过程。比如文本文档使用的是ANSI编码,
.Cpp 文件 是UTF-8编码,网页浏览使用的Unicode编码,不论什么时候数据通过不同的编码或平台之间,那些数据总会有损坏的危险。 举个例子:unicode在简体中文的环境下是乱码。所以保护数据尽量使用数据本身的属性进行操作。
文件写入
#include<fstream>
#include<iostream>
#include<string>
using namespace std;
int main()
{
char ch[3]={'a','A','1'};
ofstream outfile("0",ios::binary);
if(!outfile){
cout<<"open error!"<<endl;
abort();
}
for(int i=0;i<3;i++)
outfile.write((char*)&ch[i],sizeof(ch[i]));
outfile.close();
return 0;
}
文件输出:
6141 31
二进制文件保存后显示为十六进制的数字 61--->97 对应的ASCII为 'a'
41--->65 对应的ASCII为 '