你应该知道的C++文件操作

C++文件操作

C++中的另一个标准库fstream,定义了三个数据类型!

数据类型 描述
ofstream 该数据类型表示输出文件流,用于创建文件并且向文件中写入信息
ifstream 该数据类型表示输入文件流,用于从文件中读取信息
fstream 改数据类型通常表示文件流,且同时具有ofstream ifstream俩种功能

在C++中,fstream可以创建文件,向文件内写入信息,也可以从文件内读取信息。

若想在C++中进行文件处理,必须加上头文件


  • 打开文件

    从文件中读取信息或者向文件中写入信息之前,必须先打开文件,ofstream fstream对象均可以用于打开文件进行写的操作。若是只需要打开文件进行读的操作,在只需要使用ifstream对象。
  • 实例
 #include 
 #include 

 using namespace std;

 int main()
 {
     ofstream fp;
     fp.open("123.txt");//文件打开
 }
  • open()函数的标准语法

    open()函数是fstream ofstream ifstream对象的一个成员。
 void open(const char *filename, ios::openmode mode);

第一参数是指定要打开文件的名称以及位置,第二参数是用来定义文件被打开的模式。

模式标志 描述
ios::app 追加模式,所有写入的数据都追加到文件末尾
ios::ate 文件打开以后定义到文件末尾
ios::in 打开文件用于读取
ios::out 打开文件用于写入
ios::trunc 若该文件存在,其内容在打开文件前被截断,即把文件长度设为0。(移除原文件内容,不存在时不会自创文件)
  • 实例
#include 
#include 

using namespace std;

int main()
{
	ofstream fp;
	fp.open("123.txt",ios::app);//以追加方式打开文件
}
  • 关闭文件

    当C++的程序运行终止的时候,会自动关闭文件刷新所有流,释放所有被分配的空间,关闭所有打开文件,但是我们写程序的时候应该养成良好的习惯,为了避免资源的浪费,我们需要自己再程序截止之前手动关闭文件!
 void  close();
  • 实例
#include 
#include 

using namespace std;

int main()
{
	ofstream fp;
	fp.open("123.txt",ios::app);
	fp.close();//关闭文件
}
  • 写入文件

    在C++中,我们使用流插入运算符<<向文件中写入信息,就如同使用该运算符输入信息到屏幕之上,唯一不同的是,在此处使用的ofstream fstream对象,而并非是cout对象。
  • 实例
#include 
#include 

using namespace std;

int main()
{
	ofstream fp;
	fp.open("123.txt",ios::app);//文件以追加方式打开
	fp << "这个代码真帅!" << endl;//文件在末尾数据追加了一段话,这个代码真帅!
	fp.close();
}
  • 读取文件

    在C++中,我们使用的是流提取运算符<<从文件中读取信息,就如同使用该运算符从键盘输入信息一样,唯一不同的是,在这里使用的是ifstream fstream对象,而不是cin对象。
  • 实例
#include 
#include 
#include 

using namespace std;

int main()
{
	string place;//定义一个string类型变量place
	ifstream fp;
	fp.open("123.txt", ios::in);//以读取文件的方式打开文件
	fp >> place;//从文件内读取数据,并且赋值给place
	cout << place << endl;//因string变量,所以遇到空格和换行会截止,故在屏幕上输出这个代码真帅!
}

你可能感兴趣的:(C++)