C语言_第14章.ppt

上传人:少林足球 文档编号:3813522 上传时间:2019-09-25 格式:PPT 页数:23 大小:1.85MB
返回 下载 相关 举报
C语言_第14章.ppt_第1页
第1页 / 共23页
C语言_第14章.ppt_第2页
第2页 / 共23页
C语言_第14章.ppt_第3页
第3页 / 共23页
C语言_第14章.ppt_第4页
第4页 / 共23页
C语言_第14章.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《C语言_第14章.ppt》由会员分享,可在线阅读,更多相关《C语言_第14章.ppt(23页珍藏版)》请在三一文库上搜索。

1、第十四章 文件,第十四章 文件,14.1 文件概述 14.2 文件的基本操作 14.3 文件的读写 14.4 文件的定位 14.5 实战练习,本章学习内容,14.1 文件概述,文件是指一组相关数据的有序集合,存储在外部介质上(例如硬盘) 文件分类: 1. 从用户角度看,文件可分为普通文件和设备文件 2. 从文件的编码方式来看,文件可分为ASCII码文件和二进制码文件,14.2.1 文件指针,typedef struct short level; unsigned flags; char fd; unsigned char hold; short bsize; unsigned char *bu

2、ffer; unsigned ar *curp; unsigned istemp; short token; FILE;,FILE file; FILE *p; p = p称为指向文件的指针,14.2.2 文件的打开,在操作一个文件时,需要首先打开文件 fopen()函数用于打开一个文件,创建一个流,声明在头文件stdio.h中 FILE *fp; fp = fopen(文件名, 文件打开方式); 其中文件名是被打开的文件名,打开方式指定打开文件的读写方式,14.2 文件的基本操作,14.2.2 文件的打开,例如: FILE *fp; fp = fopen(“test”, “r”); 如果fo

3、pen()调用成功,返回文件指针赋给fp;否则打开文件失败,说明: 1. 文件打开方式是使用双引号的字符串,各个字符含义如下 r(read):读 w(write):写 a(append):追加 t(text):文本文件,可省略不写 b(binary):二进制文件 +:读和写,14.2.2 文件的打开,2. 凡是用”r”打开文件时,该文件必须存在 3. 用”w”打开的文件若不存在,则以指定的文件名创建文件,若文件存在,则将该文件删除,重新创建文件 4. ”a”为追加操作,文件也必须存在 5. 打开文件失败时,返回空指针NULL,14.2.3 文件的关闭,操作完毕后,需要调用fclose()函数将

4、打开的文件关闭 fclose(文件指针); FILE *fp; fp = fopen(“test”, “r”); fclose(fp); 正常关闭时返回值为0,否则返回EOF,文件结束符,14.3.1 fputc()函数,功能:将一个字符写入指定的文件中 一般形式:int fputc(字符, 文件指针); 例如:fputc(a, fp);,14.3 文件的读和写,14.3.2 fgetc()函数 功能:从指定的文件中读一个字符 一般形式:字符变量=fgetc(文件指针); 例如:ch=fgetc(fp);,14.3 文件的读和写,14.3.2 fgetc()函数 说明 在文件内部有一个位置指针

5、。用来指向文件的当前读写字节。在文件打开时,该指针总是指向文件的第一个字节,使用fgetc()函数后,该位置指针向后移动一个字节。因此可以连续多次使用fgetc()函数,读取多个字符。应注意指针和文件内部的位置指针不是同一个概念,文件指针指向的是整个文件,需要在程序中定义说明,只要不重新赋值,文件指针的值不会改变;文件内部的位置指针用以指示文件内部的当前读写位置,每读写一次,该指针均向后移动,不需要在程序中定义说明,由系统控制。,14.3 文件的读和写,14.3.3 fputs()函数 功能:向指定的文件写入一个字符串 一般形式:fputs(字符串, 文件指针); 字符串可以是字符串常量,也可

6、以是字符数组名或字符指针变量 例如:fputs(“test string”, fp);,14.3 文件的读和写,14.3.4 fgets()函数 功能:从指定的文件中读取一个字符串到字符数组中 一般形式:fgets(字符数组名, n, 文件指针); n是正整数,表示读取的字符个数,包括字符串结束标志符0 例如:fgets(str, n, fp);,14.3 文件的读和写,14.3.5 fprintf()函数 功能:将数据格式化写入到文件中 一般形式:fprintf(文件指针, 格式字符串, 输出列表); 例如:fprintf(fp, “%d”, i);,14.3 文件的读和写,14.3.6 f

7、scanf()函数 功能:从指定的文件中格式化方式读取数据 一般形式:fscanf(文件指针,格式化字符串,输入列表); 例如:fscanf(fp, “%d”, i);,14.3 文件的读和写,14.3.7 fread()函数和fwrite()函数 功能:fread()是从指定的文件中读取数据块;fwrite()是将数据块写入到指定文件 一般形式: fread(buffer, size, count, fp); fwrite(buffer, size, count, fp);,14.3 文件的读和写,14.3.7 fread()函数和fwrite()函数 说明 1. buffer是一个指针 2

8、. size表示数据块的字节数 3. count表示要读写的数据的块数 4.fp表示文件指针,14.4 文件的定位,14.4.1 fseek()函数 功能:移动文件位置指针到指定的位置 一般形式:fseek(文件指针,位移量,起始点); 其中位移量表示位置指针移动的字节数,要求为long类型,以便文件长度大于64KB时不会出错 起始点表示从何处开始计算位移量,规定有三种:文件开头,当前位置和文件结尾,14.4 文件的定位,14.4.1 fseek()函数,14.4 文件的定位,14.4.2 rewind()函数 功能:将文件的位置指针重新移动到文件的开头 形式:rewind(文件指针); 14.4.3 ftell()函数 功能:得到流式文件中的当前位置,用相对于文件开头的偏移量表示 形式:long ftell(文件指针);,14.5 实践练习,1将一个已存在的文本文件的内容存放到另一个文件中。 2输入学生的人数以及他们的信息,保存到文件中,再从文件中读取出来输出到屏幕上。,END,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1