栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++文件操作-文本文件-写文件

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++文件操作-文本文件-写文件

**文件操作的三大类:

1、ofstream:写操作
2、ifstream:读操作
3、fstream:读写操作
**

1.1写文件

写文件操作步骤:
1、包含头文件
#include
2、创建流对象
ofstream ofs;
3、打开文件
ofs.open(“文件路径”,打开方式);
4、写数据
ofs<<“写入的数据”;
5、关闭文件
ofs.close();

文件打开方式:

打开方式解释
ios::in为读文件而打开文件
ios::out为写文件而打开文件
ios::ate初始位置:文件尾
ios::app追加方式写文件
ios::trunc如果文件存在先删除,再创建
ios::binary二进制方式

注意:文件打开方式可以配合使用,利用|操作符
例如:用二进制方式写文件 ios::binary | ios:: out

例子:
class Person
{
public:
	char m_Name[64];
	int m_Age;
};
//二进制文件 写文件
void test01() 
{
	//1、包含头文件
	//2、创建输出流对象 
	ofstream ofs("person.txt", ios::out | ios::binary);

	//3、打开文件
	//ofs.open("person.txt", ios::out | ios::binary)//等同于第二步  可以分开写,也可以一起写
	Person p = { "张三",18 };

	//4、写文件
	ofs.write((const char*)&p, sizeof(p));
	//5、关闭文件
	ofs.close();
}

//二进制读文件
void test02()
{
	//1、包含头文件

	//2、创建流对象
	ifstream ifs;
	//3、打开文件 判断文件是否打开
	ifs.open("person.txt", ios::in | ios::binary);

	if (!ifs.is_open()) {//返回的是布尔类型加!取反
		cout << "文件打开失败了" << endl;
		return;
	}
	//4、读文件
	Person p;
	ifs.read((char*)&p, sizeof(Person));
	cout << "姓名" << p.m_Name << "  年龄:" << p.m_Age << endl;

	//5、关闭文件
	ifs.close();
}
int main() {
	test02();
	system("pause");
	return 0;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/429872.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号