C++的文件操作主要是依赖于头文件中相关的类
头文件:‘fstream’
主要使用到的:ifstream,ofstream,fstream
分别用于输入,输出,输入/输出
下面的都是关于二进制文件的读写–因为我觉得二进制文件的操作太简便啦!
下面是文件的写操作:
#include<iostream>
#include <fstream>
using namespace std;
int main()
{
ofstream in("lianix.dat"); //以构造的形式新建或者打开二进制文件
int A[5]={1,2,3,4,5};
in.write((char*)A,sizeof(A)); //这里注意要进行强制类型转化,sizeof(A)为这一块数据的大小
in.close(); //记得关闭文件才能成功保存
return 0;
}
Ps:强制转化的原因是read()和write()函数参数表所接收的数据类型是char∗\color{red}{Ps:强制转化的原因是read()和write()函数参数表所接收的数据类型是char*}Ps:强制转化的原因是read()和write()函数参数表所接收的数据类型是char∗
下面是文件的读操作:
#include<iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("lianix.dat");
int A[5]; //储存空间偏大可以,偏小的话超出的部分就存不进去了
in.read((char*)A,sizeof(A)); //sizeof(A)是要读入的这一块数据的大小
for(int i=0;i<5;i++)cout<<A[i];
in.close();
return 0;
}
下面是利用循环一块一块地读文件:(可以用于不确定大小的一组数据的读取)
#include<iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("lianix.dat");
int A; //当还能从文件中读时则进行循环,&A为int型A的地址然后转化成字符串的形式
while(in.read((char*)&A,sizeof(A)))cout<<A;
in.close();
return 0;
}