C++读写文件

C++文件编程:
操作文本文件和二进制文件:
ofstream 写操作:从程序中往文件写内容
ifstream 读操作:从文件中读取内容到程序
fstream 读写操作

在这里插入图片描述

#include <iostream>
#include <fstream>//引入文件头
#include <string>
using namespace std;

class Person
{
public:
	char name[10];
	int age;
};
//写文件
void write()
{
	
	string c = "今天是2020年1月3号";
	//创建流对象
	ofstream outFile;
	//打开文件,以写的方式打开
	outFile.open("test.txt",ios::out);
	//操作文件
	outFile << c << endl;
	outFile << "还有22天就要过年了" << endl;
	outFile.close();
	
}

//读文件
void read()
{
	
	ifstream infile;
	infile.open("test.txt",ios::in);
	//判断文件是否打开成功
	if (!infile.is_open())
	{
		cout << "文件打开失败" << endl;
		return;
	}
	//读取文件的方式
	//第一种
	char ch[1024] = { 0 };
	while (infile >> ch)//按行读入
	{
		cout << ch << endl;
	}
	//第二种
	string str;
	while (getline(infile, str))
	{
		cout << str << endl;
	}

	//关闭流对象
	infile.close();

}

//写入二进制文件
void inBinary()
{
	//创建流对象
	ofstream outFile;
	//打开二进制文件,以写的方式打开
	outFile.open("test1.txt", ios::out|ios::binary);
	//给自定义的类型添加数据
	Person p = { "aaa",18 };
	//操作文件
	outFile.write((char *)&p, sizeof(Person));
	//关闭流对象
	outFile.close();
}

//读取二进制文件
void outBinary()
{
	ifstream inf;
	inf.open("test1.txt", ios::in | ios::binary);
	if (!inf.is_open())
	{
		cout << "文件打开失败" << endl;
		return;
	}
	Person p;
	inf.read((char *)&p, sizeof(p));
	cout<<"name: "<<p.name << " age:" << p.age << endl;

	inf.close();

}
int main()
{
	inBinary();
	outBinary();
	system("pause");
	return 0;

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值