c语言中程序的文件创建于保存,c语言程序设计教程(第2版)课站件第13章.ppt

c语言程序设计教程(第2版)课站件第13章

第13章 文 件 本章要点 掌握文件的基本概念 掌握文件类型指针 理解文件操作的基本方法 掌握文件处理函数 本章难点 对文件进行不同操作的函数的功能及其用法 13.1 C文件的概述 13.2 文件的打开与关闭 13.3 文件的读写 4. ferror()函数 ferror()函数用来确定文件操作系统中是否出错。其函数原型为: int ferror(FILE *fp); 如果ferror()函数返回值为0,则表示此前的文件操作成功;否则,若返回一个非0值,则表示最近一次文件操作出错。由于对文件的每次I/O操作都会形成新的出错码,所以在每次文件操作后应立即调用ferror()函数查看此次操作是否成功,否则会丢失信息。 表示上述功能常用的语句的是: 5. clearer()函数 clearer()函数的函数原型为: void clearer(FILE *fp); 功能是清除文件结束标志和文件出错标志(设置为0)。本函数没有返回值。 13.5 文件综合实例 编写一个程序,从data.dat文本文件中读出一个字符,将其加密后写入data1.dat文件中,加密方式是字符的ASCII码加1。 分析:先打开data.dat文本文件并建立data1.dat文件,从前者读出一个字符c,将(c+1)%256这个ASCII码对应的字符写入后者中。直到读完为止。 #include void main() {FILE *fp,*fp2; char c; if((fp=fopen("data.dat","r"))==NULL) {printf("不能打开文件\n"); return;} if((fp1=fopen(data1.dat),"w")==NULL) {printf("不能建立文件\n"); return;} while(!feof(fp)){ c=fgetc(fp); c=(c+1)%256; fputc(c,fp1);} fclose(fp); fclose(fp);} 13.6 小 结 (1)文件是指存储在外部介质上的数据集合。 (2)对文件的操作包括文件的打开、关闭、读、写、文件的定位和出错的检验等。现在分别介绍如下: ①在C语言中使用fopen()函数完成对文件的打开操作。其一般调用方式为:fopen("文件名","操作方式"); ②关闭文件用函数fclose()函数来实现,其调用的形式为:fclose(fp); ③文件的读函数包括fgetc()函数、fgets()函数、fread()函数和fscanf()函数。 fgetc()函数的功能是从指定的文件中读入一个字符。 fgets()函数的功能是从文件指针所指向的文件中,读入一个字符串。 fscanf()函数为格式化输入函数,其功能是从指定的文件中读取指定格式的数据。 fread()函数的功能是从指定文件中读入一组数据。 ④有关写操作的函数主要有fputc()函数、fputs()函数、fwrite()函数和fprintf()函数。 fputs()函数,功能是将字符串写入文件指针所指的文件中。fputs()函数带返回值。如输出成功,返回值为0,否则返回文件结束标志EOF其值为-1。 fprintf()函数为格式化输出函数,其功能是把输出数据发送到指定文件中。 fwrite()函数的功能是将buffer所指向的内存区域中的数据写入文件指针fp所指的文件中,这些数据共有count 项,每项长度为size个字节,因此字节总数为count*size。 ⑤文件定位函数,我们主要介绍了rewind()函数、fseek()函数和ftell()函数。 rewind()函数,rewind()函数也叫重置位置指针函数。 fseek()函数即随机定位函数,其函数原型为: int fseek(FILE *fp,long offset,int origin); ftell()函数,ftell()函数又叫定位当前位置指针的函数,ftell()函数的功能是返回当前文件位置指针的位置,常用于保存当前文件指针位置。 ⑥对于出错的检验函数,我们主要介绍ferror()函数和clearer()函数。 * 13.1.1 文件的基本概念 一、文件:是指存储在外部介质上数据的集合。 操作系统是以文件为单位对数据进行管理的。每一个与主机相连的输入或输出设备都看作是一个文件。  二、文件的存在形式及分类 文件的存在形式:文件名+文件内容。 文件内容:是一个字符(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值