- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言的文件操作函数讲解解读
C语言文件操作函数
2007-10-17 19:21
13.1C语言文件1,两种文件存取方式(输入,输出方式)顺序存取直接存取2,数据的两种存放形式文本文件二进制文件
13.2文件指针定义文件类型指针变量的一般形式:FILE *指针变量名;例如:FILE *fp1,*fp2;
13.3打开文件在使用文件之前,需打开文件.在C里使用fopen函数打开文件.格式为:fopen(文件名,文件使用方式);此函数返回一个指向FILE类型的指针.如:FILE *fp;fp=fopen(file_1,r);如果调用成功,fp就指向file_1,否则返回为NULL,所以为了保证文件的正确使用,要进行测试.采用如下语句:If((fp=fopen(file_1,r))==NULL){printf(Cannot open this file\n);exit(0);}最常用的文件使用方式及其含义如下:1,r.为读而打开文本文件.(不存在则出错)2,rb.为读而打开二进制文件.3,w.为写而打开文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖)4,wb.为写而打开二进制文件.5,a.为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)6,ab.为在文件后面添加数据而打开一个二进制文件.最常用的文件使用方式及其含义如下:7,r+.为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变)8,rb+.为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置.9,w+.首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失)10,wb+.功能与w+同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.最常用的文件使用方式及其含义如下:11,a+.功能与a相同;只是在文件尾部添加新的数据后,可以从头开始读.12,ab+.功能与a+相同;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置.
13.4关闭文件
当文件的读写操作完成之后,使用fclose函数关闭文件.格式如下:fclose(文件指针)如:fclose(fp);
13.5调用getc(fgetc)和putc(fputc)函数进行输入和输出1,调用putc(或fputc)函数输出一个字符调用形式为:putc(ch,fp);功能是:将字符ch写到文件指针fp所指的文件中去.当输出成功,putc函数返回所输出的字符;否则,返回一个EOF值.EOF是在stdio.h库函数文件中定义的符号常量,其值等于-1.
13.5调用getc(fgetc)和putc(fputc)函数进行输入和输出例如:把从键盘输入的文本按原样输出到名为file_1.dat文件中,用字符@作为键盘输入结束标志.#includeVoid main(){FILE *fpout;char ch;if(fpout=fpopen(file_1,w)==NULL){printf(Cannot open this file!\n);exit(0);}ch=getchar();while(ch!=@){ fputc(ch,fpout); ch=getchar(); }fclose(fpout);}2.调用getc(或fgetc)函数输入一个字符调用形式为:ch=getc(pf);功能是:从pf指定的文件中读如一个字符,并把它作为函数值返回.例如:把一个已存在磁盘上的file_1.dat文本文件中的内容,原样输出到终端屏幕上.#includevoid main(){FILE *fpin;char ch;if((fpin=fopen(file_1.dat,r))==NULL){ printf(Cannt open this file!\n);exit(0);}ch=fgetc(fpin);while (ch!=EOF){ putchar(ch); ch=fgetc(fpin);}fclose(fpin);}
13.6判断文件结束函数feofEOF可以作为文本文件的结束 标志,但不能作为二进制文件的结束符.feof函数既可以判断二进制文件,又可以判断文本文件.例:编写程序,用于把一个文本文件(源)复制到另一个文件(目的)中,源文件名和目的文件名由命令行输入.命令形式如下:可执行程序名 源文件名 目的文件名#include void filecopy(FILE* ,FILE *);void main(int argc,char *argv[]){FILE
文档评论(0)