接第一篇(1条消息) C++中fstream 的使用一_一步步走的博客-CSDN博客
1.在继续介绍前,还是在理清一下流的概念。什么是流,流是一个很抽象的概念,它输入输出设备的一种抽象,是数据的接收者和数据的产生者之间的联系。就相当于是一条管道,从程序流向文外部的输出管道便是输出流,而数据从外部流向程序的输入管道便是输入流。也就是说,我们在构建文件输出流对象时就是建立一个数据从程序输出到文件的输出管道,而建立一个文件输入流对象就是建立一个数据从文件流向程序的的输入管道。就如下图所示:
2.理解了流的概念后,我们来介绍文件流,文件流fstream包括ofstream和ifstream,即输入流对象和输出流对象。
2.1 构建
文件输出流
a.
ofstream file("filemane");
b.
ofstream file;
file.open("filemane);
文件输入流
a.
ifstream file("filemane");
b.
ifstream file;
file.open("filemane");
2.2 插入符“<<"和提取符">>"
对于一个输出流对象,我们使用插入符,也就是我们程序所生成的数据输出到文件中。而输入流对,我们使用提取符,也就是我们数据从文件中输入到程序中。
代码示例:
#include#include #include using namespace std; int main(){ ofstream out_test("out.txt"); //构建输出流对象,并于out.txt关联 if(!out_test){ cout<<"open file failed"; } string s[]={"li","wang","zhang"}; for(int i=0;i<3;i++){ out_test< >in;//将in_test输入流中的字符串提取到in中,即将out.txt中的string输入进程序 并储存在in中 cout<结果:
2.3相关函数
2.3.1文件输出流相关函数
1. open()函数,将输出流对象和文件关联起来。
open("filemane",ios_base::out|ios_base::binary);//ios_base::out是表示打开模式
文件输出流的文件打开模式 ios_base::app 打开一个输出流文件用于在文件尾添加数 ios_base::ate 打开一个现存文件并查找到结尾 ios_base::in 打开一个文件用于输入 ios_base::out 打开一个文件用于输出。(ofstream的隐含模式) ios_base::trunc 打开一个文件,如果它以存在内容则删除原有的内容 ios_base::binary 以二进制模式打开文件 2.close()函数,关闭一个与流对象关联的文件。
file.close();
3.put()函数,把一个字符写入到输出流。和插入符"<<"差不多
cout.put('a');
cput<<'a';
4.write()函数,即写函数,将程序中的数据写到文件中。
write(char* buffer, int count),buffer,文件的起始地址,count写的字节长度。
先写到这,后续之后写好了贴链接



