C++中对文件操作需要包含头文件<fstream>
操作文件的三大类:1.ofstream写操作 2.ifstream读操作 3.fstream读写操作
一.写文件步骤
1.包含头文件 #include<fstream>
2.创建流对象 ofstream ofs;
3.打开文件 ofs.open("文件路径",打开方式);
4.写数据 ofs<<"写入的数据";
5.关闭文件 ofs.close();
文件打开方式:
| 打开方式 | 解释 |
| ios::in | 为读文件而打开文件 |
| ios::out | 为写文件而打开文件 |
| ios::ate | 初始位置:文件尾 |
| ios::app | 追加方式写文件 |
| ios::trunc | 如果文件存在先删除,再创建 |
| ios::binary | 二进制方式 |
文件打开方式可以配合使用:利用" | "操作符
Example:写入文件
#include<iostream> #include<fstream>//所要包含的头文件 using namespace std; void test() { //创建流对象 ofstream ofs; //指定打开的方式 ofs.open("test.txt", ios::out);//没有指定路径,就会与项目路径一致 //4.写内容 ofs << "姓名:JIN" << endl; //5.关闭文件 ofs.close(); } int main() { test(); system("pause"); return 0; }
读文件
1.包含头文件 #include<fstream>
2.创建流对象 ifstream ifs;
3.打开文件并判断文件是否打开成功
ifs.open("文件路径",打开方式);
4.读数据 四种方式读数据
5.关闭文件 ifs.close();
Example:读入文件
#include<iostream> #include<fstream> using namespace std; //读文件 void test() { //创建流对象 ifstream ifs; ifs.open("test.txt", ios::in);//在代码存储的同一个文件路径下 //判断是否打开成功 if (!ifs.is_open()) { cout << "文件打开失败!" << endl; //当这个文件不存在或其它意外 } //读数据 //第一种 char ch[100] = { 0 }; //如果文档中遇到一个换行符或者空格就会判断下一个 while (ifs >> ch) { cout << ch << endl; } ifs.close(); } int main() { test(); system("pause"); return 0; }
第二种读入方式
//ifs的一个函数getline()可以读取一行数据,需要传入两个参数 //数组首地址,存储的字节数在这里指数组提供的空间 while (ifs.getline(ch, sizeof(ch))) { cout << ch << endl; }
第三种读入方式
//不使用字符数组,而使用C++中的字符串string string ch; while (getline(ifs, ch))//使用函数getline { cout << ch << endl; }
注意:一定要关闭文件 !
Importance
员工管理系统使用读写文件
浙公网安备 33010602011771号