C语言程序设计教程课件作者葛素娟第十二章节文件.pptVIP

  • 1
  • 0
  • 约2.12万字
  • 约 53页
  • 2017-11-12 发布于广东
  • 举报

C语言程序设计教程课件作者葛素娟第十二章节文件.ppt

第十二章 文件 一、文件概述 二、文件指针 三、文件的打开与关闭 四、文件的读写 五、文件的定位 六、出错的检测 七、电动车电池管理管理之二 二、文件指针 三、文件的打开和关闭 四、文件的读写 五、文件的定位 六、出错的检测 七、电动车电池管理程序之二 文件中有一个位置指针,指向当前读写的位置。如果顺序读写一个文件,每次读写一个字符,则读写完一个字符后,该位置指针自动移动指向下一个字符位置。如果想改变这样的规律,强制使位置指针指向其它指定的位置,可以使用有关函数。 1、rewind函数 rewind函数的作用是使位置指针重新返回文件的开头。该函数在“stdio.h”中定义。 该函数调用的一般形式为: rewind(fp); 其中:fp是文件指针。此函数没有返回值。 【例12-9】有一文件,第一次将它显示在屏幕上,第二次将它复制到另一文件上。 #include stdio.h #include stdlib.h void main( ) { FILE *fp1,*fp2; char ch; if((fp1=fopen(c:\\file\\s.txt,r))==NULL) //在C盘file文件夹已存在s.txt { printf(文件未成功打开!\n); exit(0); } if((fp2=fopen(c:\\file\\t.txt,w))==NULL) { printf(文件未成功打开!\n); exit(0); } for(; !feof(fp1); ) putchar(fgetc(fp1)); //s.txt内容显示在屏幕上 putchar(\n); rewind(fp1); //文件指针返回文件的开头 ch=fgetc(fp1); for(; ch!=EOF; ) { fputc(ch,fp2); //写到t.txt文件上 ch=fgetc(fp1); } fclose(fp1); fclose(fp2); } 运行结果,如图所示。 打开c:\file\t.txt文件,如图所示。 2、fseek函数 fseek函数的作用是使位置指针按需要移动到任意位置,能够实现随机读写。fseek函数一般用于二进制文件,因为文本文件要发生字符转换,计算位置时往往会发生混乱。该函数在“stdio.h”中定义。 该函数调用的一般形式为: fseek(fp,位移量,起始点); 其中:fp是文件指针;位移量是以“起始点”为基点,向前或向后移动的字节数;起始点“0”代表“文件开始”、“1”代表“当前位置”、“2”代表“文件末尾”。正常返回当前指针位置;异常返回“-1”表示定位出错。 例如: fseek(fp,100,0); 将位置指针移到离文件头100个字节处 fseek(fp,100,1); 将位置指针移到离当前位置100个字节处 fseek(fp,-100,2); 将位置指针从文件末尾处向后退100个字节 3、ftell函数 ftell函数的作用是得到文件指针的当前位置。该函数在“stdio.h”中定义。 该函数调用的一般形式为: ftell(fp); 其中:fp是文件指针。正常返回位移量;异常返回“-1”表示出错。 例如: ftell(fp); //存放当前位置,用相对于文件开头的位移量来表示 【例12-10】fseek函数和ftell函数综合应用。 #include stdio.h #include stdlib.h void main( ) { FILE *fp; if((fp=fopen(c:\\file\\number.txt,rb))==NULL) //在C盘file文件夹已存在number.txt

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档