栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C/C++ 文件读取操作 竞赛篇

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C/C++ 文件读取操作 竞赛篇

Open file
FILE *fp = fopen("file_name","mode")

mode参数解释:
“r”:以只读的形式打开文本文件(不存在则出错)
“w”:以只写的形式打开文本文件(若不存在则新建,反之,则从文件起始位置写,覆盖原内容)
“a”:以追加的形式打开文本文件(若不存在,则新建;反之,在原文件后追加)
“r+”:以读写的形式打开文本文件(读时,从头开始;写时,新数据只覆盖所占的空间)
“wb”:以只写的形式打开二进制文件
“rb”:以只读的形式打开二进制文件
“ab”:以追加的形式打开一个二进制文件
“rb+”:以读写的形式打开二进制文件。
“w+”:首先建立一个新文件,进行写操作,然后从头开始读(若文件存在,原内容将全部消失)
“a+”:功能与”a”相同。只是在文件尾部追加数据后,可以从头开始读
“wb+”:功能与”w+”相同。只是在读写时,可以由位置函数设置读和写的起始位置
“ab+”:功能与”a+”相同。只是在文件尾部追加数据之后,可以由位置函数设置开始读的起始位置

判断文件是否打开失败

if(fp ==NULL) {
	printf("open file fail!");
	exit(1);
}
file operation function

文件的打开

  • fopen():打开文件

文件的关闭

  • fclose():关闭文件

文件的读写

  • fgetc():读取一个字符
  • fputc():写入一个字符
  • fgets():读取一个字符串
  • fputs():写入一个字符串
  • fprintf():写入格式化数据
  • fscanf():格式化读取数据
  • fread():读取数据
  • fwrite():写入数据

文件状态检查

  • feof():文件是否结束
  • ferror():文件读/写是否出错
  • clearerr():清除文件错误标志
  • ftell():文件指针的当前位置

文件指针定位

  • rewind():把文件指针移到开始处
  • fseek():重定位文件指针
Usage

文件类型分为:
文本文件和二进制文件。
对于竞赛中出现的,都是.txt结尾的文件文件。
文本文件是以字符编码的方式进行保存的。
因此我们读取文件中矩阵的话,需要创建一个字符数组进行存储。

	FILE *fp = fopen("2020.txt","r");
	if(!fp){
		printf("open file fail!n");
		exit(1);
	}
	char cur;
	while(!feof(fp)){
		cur = fgetc(fp);
		if(cur=='n'){
			n++;
			m=0;
			continue;
		}
		map[n][m++]=cur;
	}
	n++;
Instance

附:2020年蓝桥杯Python组第二题-寻找2020

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/690667.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号