C++读写文件,fstream

文件的读写

  • 文件读写实现的方式很多,这里简单介绍fstream,它提供了一种流的方式操作文件,用起来和cin/cout感觉一样,极易上手

头文件:

#include<fstream>

打开文件输入流:

ifstream in("test.txt");
//如果打开失败将返回0
if(!in){
	//打开失败
}

如果打开成果,就和cin一样的用法,我们看一个查找名字的程序

string name;
while(in>>name){
	if(name=="target"){
		cout<<"find "<<name<<endl;
		break;
	}
}

打开文件输出流:

//默认打开方式是覆盖,我们可以指定为追加(append),通过第二个参数
ofstream out("test.txt",ios_base::app);
if(!out){
	//打开失败
}

如果打开成功,和cout一样用法,不再演示

打开文件输入输出流:

如果想同时读写文件,打开文件输入输出流

fstream io("test.txt",ios_base::in|ios_base::app);
if(!io){
	//打开失败
}
else{
	iofile.seekg(0);
	//文件io流中有输入和输出两个指针,seekp是输出指针,seekg是输入指针
	//这里将输入定位到了文件头部
}

关闭流:

调用.close()函数即可,例如

in.close();

模式:

常用打开模式

The following constants are also defined:
Constant Explanation
app seek to the end of stream before each write
binary open in binary mode
in open for reading
out open for writing
trunc discard the contents of the stream when opening
ate seek to the end of stream immediately after open

posted @ 2020-04-21 20:43  讲成大家听不懂的样子  阅读(588)  评论(0编辑  收藏  举报