C++文件输入流和输出流的基本使用

C++文件输入流和输出流的基本使用,第1张

在了解文件的输入流输出流时,首先我们来了解一下文件的打开方式有哪些?

文件打开方式
ios::in读的方式打开
ios::out写的方式打开
ios::trunc如果文件已经存在,打开文件之前就会把长度截为0
ios::binary以二进制方式写(默认是文本方式)
ios::ate 文件打开后定位到文件尾部
ios::app尾部追加写入

这些打开方式,都可以用位 *** 作 | 组合使用.

对文件进行输入流,输出流的 *** 作,需要使用头文件:

使用 fstream,可以定义一个对文件的输入流对象,也可以定义文件的输出流对象,但是在打开文件的时候,需要指明使用的是哪种文件打开方式.如果是用来写文件,那么就要在文件打开的时候时候在文件名后面加上 class="superseo">ios::out,例如:

 读文件就需要在后面加上ios::in .

 

定义文件的输入流对象

ifstream  是专门用来定义文件的输入流对象,这时候可以不写文件打开方式(默认为ios::in),

 示例代码:

#include 
#include 
#include 

using namespace std;

int main()
{
	string name;
	int age;
	ifstream inFile;//定义了一个文件输入流对象

	inFile.open("user.txt");//文件默认为 ios::in 打开方式

	while (1) {
		inFile >> name;
		if (inFile.eof()) { //判断文件是否结束
			break;
		}
		cout << name << "\t";

		inFile >> age;
		cout << age << endl;
	}

	// 关闭打开的文件
	inFile.close();

	system("pause");
	return 0;
}

在读取文件的内容的时候,需要使用符号 >> 把文件的内容读取到变量name,age中,

 

定义文件的输出流对象

ofstream,时专门来定义文件的输出流对象的,同样不需要写文件打开方式(但编译器已经默认是ios::out)方式,

 示例代码:

#include
#include//文件 *** 作

using namespace std;

int main1(void) {
	string name;
	int age;

	ofstream outFile;//定义了一个文件输出流对象
	outFile.open("user.txt");//使用输出流对象打开一个文件

	// 建议指定打开方式
	// ofstream的默认打开方式是 ios::out,截断式写入 ios::trunc

	//使用输出流对象打开一个文件, ios::out | ios::trunc
	//outFile.open("user.txt", ios::out | ios::trunc);

	while (1) {
		cout << "请输入姓名:[ctrl+Z推出]";
		cin >> name;

		if (cin.eof()) {
			break;
		}

		//把输入的姓名写入文件
		outFile << name << "	";

		cout << "请输入年龄";
		cin >> age;

		outFile << age << endl;
	}
	//关闭刚才打开的文件流
	outFile.close();


	system("pause");
	return 0;
}

需要用符号 << 把从键盘输入的数据,写到定义好的文件输出流对象 outFile 里面.

 

二进制的文件打开方式

读:

 写:

 

以上就是今天的分享了!

 

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/2889483.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-14
下一篇 2022-09-14

发表评论

登录后才能评论

评论列表(0条)

保存