当前位置:   article > 正文

6.C++文件操作_open(ref_path, std::ios::out|std::ios::trunc);用法

open(ref_path, std::ios::out|std::ios::trunc);用法

6.C++文件操作

写文件

写文件步骤如下:

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

打开方式:

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

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

#include <iostream>
#include <fstream>
using namespace std;
void test1(){
	ofstream ofs;
	ofs.open("文件操作产生的临时文件.txt",ios::out);
	ofs<<"wdnmd"<<endl;
	ofs<<"wdnmd"<<endl;
	ofs<<"wdnmd"<<endl;
	ofs.close();
} 
int main(){
	test1();
	system("pause");
	return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

读文件

读文件步骤如下:

  1. 包含头文件 #include <fstream>
  2. 创建流对象 ifstream ifs; ofstream 写操作 ifstream 读操作 fstream 读写操作
  3. 打开文件并判断文件是否打开成功 ifs.open("文件路径",打开方式)
  4. 读数据 四种方式读取
  5. 关闭文件 ifs.close()

打开方式:

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

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

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

void test1(){
	ifstream ifs;
	ifs.open("文件操作产生的临时文件.txt",ios::in);   
	if(!ifs.is_open()){                 //返回类型为bool 成功为真 失败为假 
		cout<<"文件打开失败"<<endl;
		return; 
	}
//  第一种	
//	char buf[1024] = {0};
//	while (ifs>>buf){ //读完会返回0 
//		cout<<buf<<endl;
//	}

//  第二种 
//	char buf[1024] = {0};
//	while (ifs.getline(buf,sizeof(buf))){
//		cout<<buf<<endl;		
//	}
	
//  第三种 
//	string buf;
//	while(getline(ifs,buf)){ //getline(输入流对象,sring变量) 
//		cout<<buf<<endl;
//	}

//  第四种 (不太推荐用)
//	char c;
//	while((c=ifs.get())!=EOF) //EOF end of file
//	{
//		cout<<c;
//	}
	ifs.close();
} 
int main(){
	test1();
	system("pause");
	return 0;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/300436
推荐阅读
相关标签
  

闽ICP备14008679号