这个年头不会个文件流还看不懂代码了,看了一遍文件流还是看不懂代码,我决定再看一遍
emmmm那么就开始我的学习笔记了
part1介绍
1.首先iostream标准库的cin和cout是从键盘上读取输入和输出的,文件流就是c++标准库的fstream库
有3个数据类型(类似于我们常说的int和char型)
| ofstream | 可以用来新建文件然后把信息写入文件。实现过程就是在代码里面写一个文件的定义,然后运行之后就会在相应地址生成一个文件,不用手动建立文件;同样的,假如我在我新建的文件里面写东西,我也可以用ofstram,比如说可以用来新建查找数据结果的文件ofstream out_100(“100.txt”),out_1k(“1k.txt”),out_10k(“10k.txt”),out_100k(“100k.txt”),out_1M(“1M.txt”) |
|---|---|
| ifstream | 这个数据类型表示输入文件流,用于从文件读取信息,假如我要把一个文件的信息读取,比如说要读取我想查找的数据,ifstream sucess(“sucess.txt”); |
| fstream | 这个数据类型通常表示该文件流,兼备有 ofstream 和 ifstream 功能,这意味着它可以创建文件,编写文件,以及读文件。就是个万金油 |
2.使用文件流的时候头文件
#include < iostream>和 #include< fstream>
part2 操作
3.打开文件操作
open()是上面3种数据类型的成员函数void open(const char *filename, ios::openmode mode) ;
2个参数
第一个,是自己命名一个文件名还有他的位置在哪
第二个,是这个文件应该以什么姿势 (模式)被打开
具体如下:
模式标志 描述
ios::app 追加模式。所有输出文件附加到结尾。
ios::ate 为输出打开一个文件并将读/写控制移动到文件的末尾。
ios::in 打开一个文件去读。
ios::out 打开一个文件去写。
ios::trunc 如果文件已经存在,打开该文件前文件中的内容将被清空。
ofstream outfile;//打开文件
outfile.open("file.dat", ios::out | ios::trunc );//两种模式
比如说这个,假如要对一个文件进行写操作然后又想在打开他之前将里面的东西清掉,二合一嘛,这种混合操作就可以像上面这样
fstream afile;//同时具备读和写的功能
afile.open("file.dat", ios::out | ios::in );
4.关闭文件
close()记得关闭所有打开的文件哦,不记得的话没关系有devc++帮你自动关
5.读写文件
<<将信息写入文件
》》读取文件信息,(完了我打不出>> ,哭) outfile<<A[i]<<' ';,
比如说这个操作就是将数据输入到文件中
如果想自己在代码里面更改的信息写入文件,那么你可以这样做
ofstream outfile;
outfile.open("afile.dat");
cout << "Writing to the file" << endl;//这是你在键盘上输入的信息
cout << "Enter your name: ";
cin.getline(data, 100);
// write inputted data into the file.你需要把这些信息写进文件中
outfile << data << endl;
cout << "Enter your age: ";
cin >> data;//这里应该是改了2次
cin.ignore();
// again write inputted data into the file.
outfile << data << endl;
参考资料:https://www.ctolib.com/docs-cplusplus-c-files-and-streams.html
好的我觉得我已经完全掌握了(老番茄自大 语录),相信我一定能看懂大佬的代码,为啥csdn没有表情,真不过瘾,预祝今天能写完实验报告
来源:CSDN
作者:梓酥
链接:https://blog.csdn.net/weixin_45523086/article/details/103551912