文件操作

文件操作

文件类型分为两种:

  1. 文本文件 - 文件以文本的ASCII码形式存储在计算机中
  2. 二进制文件 - 文件以文本的二进制形式存储在计算机中

操作文件的三大类:

  1. ofstream:写操作
  2. ifstream: 读操作
  3. fstream : 读写操作

文件打开方式:

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

注意: 文件打开方式可以配合使用,利用|操作符

例如:用二进制方式写文件 ios::binary | ios:: out

文本文件

写文件:

void main()
{
	ofstream ofs;
	ofs.open("test.txt", ios::out);	//以输出的方式打开文件
	ofs << "CLANNAD" << endl;	//使用输出运算符<<向文件中输入数据
	ofs.close();
}

读文件:

void test01()
{
	ifstream ifs;
	ifs.open("test.txt", ios::in);
	if (!ifs.is_open()){	//使用is_open()判断是否打开成功
		std::cout << "文件打开失败" << std::endl;
		return;
	}
	//char buf[1024] = { 0 };
	//while (ifs >> buf){
	//	std::cout << buf << std::endl;
	//}

	//char buf[1024] = { 0 };
	//while (ifs.getline(buf,sizeof(buf))){
	//	std::cout << buf << std::endl;
	//}

	//string buf;
	//while (getline(ifs, buf)){
	//	std::cout << buf << std::endl;
	//}
    
	char c;
	while ((c = ifs.get()) != EOF){
		std::cout << c;
	}
	ifs.close();
}

二进制文件

写文件:

函数原型 :ostream& write(const char * buffer,int len);

参数解释:字符指针buffer指向内存中一段存储空间。len是读写的字节数

读文件:

函数原型:istream& read(char *buffer,int len);

参数解释:字符指针buffer指向内存中一段存储空间。len是读写的字节数

posted @ 2025-10-13 23:48  单身喵  阅读(2)  评论(0)    收藏  举报