1 概念,从文件编码的方式来看,
文件 分为 文本文件 和 二进制文件;
c语言中设备也作为文件来处理,如输入设备(键盘)stdin、输出设备(显示 器)stdout
2 对文件的操作可以用 指向该文件结构体变量的指针变量
在程序中声明指向文件结构体变量的指针 FILE *文件结构体指针变量
文件打开函数 fopen
FILE *fopen(char *filename,char *mode)
如果要打开一个\vc目录中文件名为k.txt的文本文件进行读操作,写为
fopen("\\vc\\k.txt","r");
文件关闭函数fclose
int fclose(FILE *stream);
调用方式:
fclose(fp);
当文件关闭成功时,返回0,关闭失败,返回非0值
文件中字符读函数fgets
int fgetc(FILE *fp)
调用方式
ch = fgets(fp);
函数功能为 从fp指向的位置读取一个字符,将字符的ASCII值给ch
文件中字符写函数fputs
int fputs(char ch,FILE *fp);
调用方式:
fputc(ch,fp);
在fp指向的位置写入一个字符(ch的值),写入字符成功,函数返回值为该字符的ASCII值,写入不成功,则返回EOF(-1);
文件格式化读函数
int fscanf(FILE *fp ,char *format,内存地址列表);
从fp所指向文件的当前位置开始,以给定的格式读数据,并赋给内存变量,数据从文件流向内存;同时,将读/写位置指针后移。
文件格式化写函数
int fprintf(FILE *stream,char *format,变量列表);
把变量列表中的数据以给定的格式写入文件fp所指向的当前位置。
文件数据块读函数
int fread(void *buffer,int size,int n,FILE *fp);
从fp所指向的文件的当前位置开始,一次读入size个字节,重复n次,并将读入的数据存放到从buffer开始的内存中;同时,将读/写位置指针向前移动size*n个字节,其中buffer是存放读入数据的内存起始地址(即存放何处)。
文件数据块写函数
int fwrite(void *buffer,int size,int n,FILE *fp);
从buffer开始,一次输出size个字节,重复n次,并将输出的数据存放到fp所指向的文件中,同时,将读/写位置指针向前移动size*n个字节,其中buffer是存放要输出数据在内存中的起始地址(即从何处开始输出)。
位置指针复位函数rewind
int rewind(文件指针);
调用方式
rewind(fp); 使文件的位置指针返回到文件头,次函数没有返回值。
随机读写函数
fseek(fp,offset,origin);