- 75
- 0
- 约1.12万字
- 约 40页
- 2018-07-08 发布于天津
- 举报
在磁盘文件上存有个学生的数据要求将第
§9.4 文件的随机读写 顺序读写和随机读写 顺序读写: 位置指针按字节位置顺序移动。 随机读写: 读写完上一个字符(字节)后,并不一定要读写其后续 的字符(字节),而可以读些文件中任意位置上所需要 的字符(字节)。 9.4.1 文件位置指针的定位 C语言提供以下有关函数使位置指针指向指定的位置: (1)rewind函数 函数功能: 是使位置指针重新返回文件的开头,此函数没有返回值。 rewind函数 函数作用: 使位置指针重新返回文件的开头,无返回值。 应用举例: 例13.4有一个磁盘文件,第一次将它的内容显示在屏幕 上,第二次把它复制到另一文件上。 例9.5 有一个磁盘文件,第一次将它的内容显示在屏幕上, 第二次把它复制到另一文件上。 #includestdio.h main() { FILE *fp1,*fp2; fp1=fopen(file1.c,r); fp2=fopen(file2.c,w); while(!feof(fp1)) putchar(getc(fp1)); rewind(fp1); while(!feof(fp1)) putc(getc(fp1),fp2); fclose(fp1);fclose(fp2); } (2)fseek函数 函数功能: 改变文件的位置指针 函数调用形式: fseek(文件类型指针,位移量,起始点) 起始点:文件开头 SEEK_SET 0 文件当前位置 SEEK_CUR 1 文件末尾 SEEK_END 2 位移量:以起始点为基点,向前移动的字节数。一般 要求为long型 9.4.1 文件位置指针的定位 fseek函数应用举例: fseek(fp,100L,0); 将位置指针移到离文件头100个字节处 fseek(fp,50L, 1); 将位置指针移到离当前位置50个字节处 fseek(fp,50L, 2); 将位置指针从文件末尾处向后退10个字节 9.4.1 文件位置指针的定位 (3)ftell函数 函数功能: 得到流式文件中的当前位置,用相对于文件开头的位 移量来表示。 返回值: 返回当前位置,出错时返回-1L。 应用举例: i = ftell(fp); if(i==-1L) printf(“error\n”); 9.4.1 文件位置指针的定位 rewind函数 函数作用: 使位置指针重新返回文件的开头,无返回值。 应用举例: 例13.4有一个磁盘文件,第一次将它的内容显示在屏幕 上,第二次把它复制到另一文件上。 例9.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]; 9.4.2 随机读写 rewind函数 函数作用: 使位置指针重新返回文件的开头,无返回值。 应用举例: 例13.4有一个磁盘文件,第一次将它的内容显示在屏幕 上,第二次把它复制到另一文件上。 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); } §9.5 文件读写的出错检测 (1)ferror函数 调用形式: ferror(fp); 返回值: 返回0,表示未出错;返回非0,表示出错。 在调用一个输入输出函数后立即检查ferror函数的值, 否则信息会丢失。在执行fopen函数时,ferror函数 的初始值自动置为0。 §
您可能关注的文档
最近下载
- DB31_T 1108-2018 监护型救护车配置规范(完整).pdf VIP
- 2025WHO《脑膜炎诊断、治疗和护理指南》解读PPT课件.pptx VIP
- 2025WHO《脑膜炎诊断、治疗和护理指南》解读PPT课件.pptx VIP
- 2025WHO《脑膜炎诊断、治疗和护理指南》解读PPT课件.pptx VIP
- 2025年高考数学试卷(广东)及全详细解析_v2.0.docx VIP
- 2025WHO《脑膜炎诊断、治疗和护理指南》解读PPT课件.pptx VIP
- (2026春新版)人教版三年级数学下册《2 除数是一位数的除法》PPT课件.pptx
- 中国6d电影设备行业市场前景预测及投资价值评估分析报告.docx
- 2026版WHO脑膜炎指南解读.pptx
- 美国浪漫主义文学.ppt VIP
原创力文档

文档评论(0)