头文件#include
类ifstream : 意思是input file stream(文件输入流)
类ofstream : 意思是output file stream (文件输出流)
类fstream : file stream (文件流)【几乎包含前面两种的操作】
创建一个文件输入流对象:
int main(){
ifstream inFile("filename.txt");
return 0;
}
int main(){
ifstream inFile;
inFile.open("filename.txt");//里面可以加上参数("filename.txt", ios::in);
return 0;
}
对于fstream类
int main(){
fstream ioFile;
ioFile.open("filename.txt", ios::in|ios::out);//形式参数表的第二个参数可以省略,因为有默认参数
return 0;
}
对于ofstream
文本模式:
outFile.open("example.txt", ios::out|ios::trunc);
如果文件不存在则创建一个,如果文件存在则清空并打开;
如果要显示指定二进制文件模式
outFile.open("example.txt", ios::binary);
检查是否打开成功两种函数:
fail(); 打开失败则返回true, 否则返回false;
is_open(); 打开成功返回true, 否则返回true;
使用方法:
#include关闭文件#include #include using namespace std; int main(){ istream inFile; inFile.open("file.txt"); if(!inFile.is_open()){ cerr << " wrong! " << endl; exit(EXIT_FAILURE); } …… return 0; }
对象调用close函数;
inFile.close();
字符流输入输出输入单个字符
char ch
inFile.get(ch);
输出单个字符
outFile.put(ch);
行输入输出
getline(文件流对象,string contents);
块输入输出read 和 write 函数;(以二进制的方式读写文件)
inFile.read(reinterpret_cast
这个用于输入和输出数组,对象成员之类的。
例如:
int main(){
int a[] = {1, 2, 3, 4};
ofstream outFile;
outFile.open("1.txt");
outFile.write(reinterpret_cast(a), sizeof(a));
outFile.close();
return 0;
}



