0
点赞
收藏
分享

微信扫一扫

爱上c++的第七天(核心课程):文件操作

eelq 2022-02-24 阅读 56

目录

一,

二,文件操作的三大操作

三,文件操作的五大步骤

四,文件打开方式

五,实例

1.写文件

2.读文件

3,写二进制文件

学过我之前c语言课程的都应该学过文件了,或者说有过编程基础的人都应该学过文件的相关知识了。所以说这一章节对大家来说可能不会太难,但是还是要会不是。哈哈哈,开始我们下面的学习。

首先,一个关键的点,在c++中任何文件的操作都要包含头文件,这是与C语言所不同的。

文件操作的头文件是<fstream>

1,写操作:ofstream

2,读操作:ifstream

3,读写操作:fstream

1.包含头文件

#include<fstream>

2.创建流对象

ifstream ifs;

3.确认打开方式

ifs.open("文件路径",打开方式);

4.操作

ifs<<数据;

5.关闭文件

ifs.close();

 ***注意:文件打开方式可以配合使用   配合 | 运算符使用

#define _CRT_SECURE_NO_WARNINGS 1

#include<iostream>
using namespace std;
#include<fstream>

void test1() {
	//1.包含头文件
	//2.创建流对象
	ofstream ofs;
	//3.确定打开方式
	ofs.open("test.txt", ios::out);
	//4.写内容
	ofs << "hello world" << endl;
	//5.关闭文件
	ofs.close();

}

int main() {
	test1();

	return 0;
}
#define _CRT_SECURE_NO_WARNINGS 1

#include<iostream>
using namespace std;
#include<fstream>
#include<string>

void test1() {
	//1.包含头文件
	//2.创建流对象
	ifstream ifs;
	//3.确定打开方式
	ifs.open("test.txt", ios::in);
    //编译器提供的判断文件是否正常打开的函数,返回值是布尔类型
	if (!ifs.is_open()) {
		cout << "文件打开失败" << endl;
		return;
	}
	//4.读内容
	//四种方法
	//第一种
	/*char buf[1024] = { 0 };
	while (ifs >> buf) {
		cout << buf << endl;
	}*/

	//第二种
	/*char buf[1024] = { 0 };
	while (ifs.getline(buf, sizeof(buf))) {
		cout << buf << endl;
	}*/

	//第三种
	/*string buf;
	while (getline(ifs, buf)) {
		cout << buf << endl;
	}*/

	//第四种
	/*char c;
	while ((c = ifs.get()) != EOF) {
		cout << c ;
	}*/

	//5.关闭文件
	ifs.close();

}

int main() {
	test1();

	return 0;
}

根据上面的两个例子,我有话要说,认真看过这上面两个例子的同学会发现,在确认打开方式这一步两个例子有一些不同之处,读文件时要对其进行判断,判断其是否成功打开,而写文件却不需要这样。

并且,编译器还提供了一个检测函数is_open()函数用来判断其是否成功打开。

#define _CRT_SECURE_NO_WARNINGS 1

#include<iostream>
using namespace std;
#include<fstream>

class Person {
public:
	char m_Name[64];
	int m_Age;
};

void test1() {
	ofstream ofs;

	ofs.open("Person.txt", ios::out | ios::binary);

	Person p = { "张三",18 };
	ofs.write((const char*)&p, sizeof(Person));

	ofs.close();

}
int main() {
	test1();

	return 0;
}

其他一些关于文件操作的细节可以看看我之前写的一篇博客。

深究C语言6.文件操作_喜欢吃豆的博客-CSDN博客icon-default.png?t=M1L8https://blog.csdn.net/m0_63309778/article/details/122097609希望大家能学到一些东西。加油!!!

举报

相关推荐

0 条评论