文件IO读写操作

我们打开文件就要对文件进行读写 下面会列出一些C++文件读写的函数
写操作对应的有:<<、put、write 等,我们来看下他们分别都能实现什么样的写文件功能! 文件的写操作 <<可以写入文本文件 支持的类型:https://cplusplus.com/reference/ostream/ostream/operator%3C%3C/ put可以单字符写入文本文件 write我们要写入的不一定是文本文件 也可能是二进制文件所以我们就不能用文本写入应该会write函数 它支持文本和二进制文本 参数1是要写入的地址 参数2是要写入的长度 文件的读操作 读文本类型/ASCII码类型的文件:>>、get、getline
>>可以读入文本文件 >>支持的类型详见:http://www.cplusplus.com/referen … eam/operator%3E%3E/

写文件

文本写文件

>> put(单字符写入) 进行写文本文件的操作,具体操作看代码演示

二进制写文件

write 可以向指定地址写入固定字节的数据 可以是二进制 也可以是文本文件

读文件

文本类读文件

可以用getline get >>进行读文本文件的操作,具体操作看代码演示

二进制文本类读文件

具体 read 函数的定义见:http://www.cplusplus.com/reference/istream/istream/read/
也就是说他从指定的文件中读取数据,读取的数据可以是文本类型的也可以是二进制类型的,其实read也不管你想要读取什么东西,我只管读就是了,把读取到的内容放在第一个参数指针指向的内存中,具体读取的字节数就是靠第二个参数指定。
代码演示:

#include <fstream>
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
	ofstream fs("hello.txt");
	ifstream is("hello.txt");
	int data = 12345;
	if (is.is_open()||fs.is_open())
	{
		cout << "file open success" << endl;
	}
	//写文件
	fs << 200<<endl;
	fs << 1.25 << endl;
	fs << "hello" << endl;
	//fs.write((const char*)&data, sizeof(data));
	char sz[] = "cvpotato博客";
	fs.write(sz, sizeof(sz));
	fs.close();
	//读文件
	/*int temp = 0;
	is >> temp;
	float  tempf = 0.0;
	is >> tempf;
	char tempsz[100] = { 0 };
	is >> tempsz;
	char tempbg[100] = { 0 };
	is >> tempbg;
	char c = is.get();*/
	char tempsz[100] = {0};
	is.getline(tempsz, 100);
	cout << tempsz << endl;
	memset(tempsz, 0, 100);
	is.getline(tempsz, 100);
	cout << tempsz << endl;
	memset(tempsz, 0, 100);
	is.getline(tempsz, 100);
	cout << tempsz << endl;
	memset(tempsz, 0, 100);
	is.getline(tempsz, 100);
	cout << tempsz << endl;
	is.close();
}
C++
C++编程学习

C++文件IO

2024-11-14 23:56:37

C++编程学习

文件IO操作之文件指针

2024-11-15 0:01:18

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索

Powered by atecplugins.com