C语言课件第10节.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章小结 文件是外部介质上数据的集合。文件标识是系统查找文件的依据,包括:路径、主文件名、扩展名。 数据文件有两类:ASCII文件和二进制文件。 为每一个使用的文件在内存中开辟文件缓冲区。 文件的指针是指向FILE类型数据的,具体指向某一文件的开头。 文件使用的步骤:打开、操作、关闭。具体操作是通过指向文件的指针变量来完成的。 对文件读写的两种方式:顺序读写、随机读写。 对文件操作的函数见表10-3。 教学进程 得到流式文件中的当前位置,用相对于文件开头的位移量来表示。 其形式为 ftell(fp) 3 用ftell()函数测定位置指针的当前位置 功能 文件的随机读写 返回值: 返回当前位置,出错时返回-1L。 例: i = ftell(fp); if(i==-1L) printf(“error\n”); 教学进程 文件的随机读写 10.4.2 随机读写 【例10.6】 在磁盘文件上存有10个学生的数据。要求将第1、3、5、7、9个学生数据输入计算机,并在屏幕上显示出来。 #include stdlib.h #includestdio.h struct student_type { char name[10]; int num; int age; char sex; }stud[10]; void main() { int i; FILE *fp; if((fp=fopen(stud-dat,rb))==NULL) { printf(can not open file\n); exit(0); } for(i=0;i10;i+=2) { fseek(fp,i*sizeof(struct student_type),0); fread(stud[i], sizeof(struct student_type),1,fp); printf(%s %d %d %c\n, stud[i].name,stud[i].num,stud[i].age,stud[i].sex); } fclose(fp); } 文件读写的出错检测 10.5 教学进程 (1) ferror函数 调用形式:ferror(fp); 返回值:返回0,表示未出错;返回非0,表示出错。 在调用一个输入输出函数(如:putc、getc、fread、fwrite等)后立即检查ferror函数的值,否则信息会丢失。 在执行fopen函数时,ferror函数的初始值自动置为0。 文件读写的出错检测 10.5 教学进程 (2) clearerr函数 调用形式: clearerr(fp); 作用:使文件错误标志和文件结束标志置为0。 只要出现错误标志,就一直保留,直到对同一文件调用clearerr函数或rewind函数,或任何其他一个输入输出函数。 教学进程 程序举例 #include stdio.h main() { long count=0; FILE *fp; if ((fp=fopen(letter.txt,r+))==NULL) { printf(cannot open this file!\n); exit(0); } fgetc(fp); while(!feof(fp)) { fgetc(fp); count=count+1; } printf(count=%ld\n,count); fclose(fp); } 【例】 统计文件 letter.txt中的字符个数。 教学进程 #include stdio.h main() { long p; FILE *fp; if ((fp=fopen(gg.txt,a))==NULL) { printf(cannot open this file!\n); exit(0); } p=ftell(fp); printf(p=%ld\n,p); fprintf(fp,data); p=ftell(fp); printf(p=%ld\n,p); fclose(fp); } 【例】 下列C程序的 功能是,用“追加”的形式 打开文件gg.txt,查看

您可能关注的文档

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档