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); }
文件的打开
文件的关闭
文件的读写
文件状态检查
文件指针定位
文件类型分为:
文本文件和二进制文件。
对于竞赛中出现的,都是.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++;
附:2020年蓝桥杯Python组第二题-寻找2020