C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt

C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt

ID:50320171

大小:201.50 KB

页数:39页

时间:2020-03-08

C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt_第1页
C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt_第2页
C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt_第3页
C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt_第4页
C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt_第5页
资源描述:

《C语言基础教程 教学课件 作者 张晓蕾 1_ 第8章 C语言对文件的操作 .ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章C语言对文件的操作文本文件的访问8.1二进制文件的访问8.2随机文件的访问8.38.1文本文件的访问8.1.1文件的基本概念1.文本文件文本文件的每个字节放一个ASCII码,代表一个字符(例如整数1234占用4个字节),文本文件也称为ASCII文件。文本文件的输出与字符一一对应,因此它便于对字符进行逐个处理,也便于输出字符。文本文件由文本行组成,每行可以由零个字符或多个字符组成,并以换行符’’结束。文本文件的结束标志是0x1A。在使用文本文件向计算机输入时,将回车换行符(’r’和’’)转换为一个换行符’’;而在输出时把换行符转换为

2、回车符和换行符。2.二进制文件二进制文件是把内存中的数据按其在内存中的组织形式原样地输出到磁盘文件中。这时,不能直接输出字符形式,一个字节并不对应一个字符(例如整数1234占用2个字节)。由此可见,二进制文件的一个优点是节省外存空间。二进制文件不需要在二进制形式与ASCII码之间进行转换,并且二进制文件不能像文本文件那样,在回车换行符和换行符之间进行转换。因此,二进制文件的另一个优点是减少转换时间,提高读写速度。8.1.2文件与指针1.文件指针C语言中,有一个FILE类型结构,它是存放文件有关信息的结构体类型。FILE对于文件来说十分重要,它可以用于

3、定义文件类型指针变量。例如:FILE*fp;2.设备文件C语言中把所有的外部设备都作为文件看待,这样的文件称为设备文件。8.1.3文件系统1.流(Stream)如前指出,流是程序输入或输出的一个连续的数据序列,常用设备(键盘、显示器、打印机等)的输入/输出都是通过流来处理的。在C语言中,所有的流均以文件的形式出现,包括设备文件。流实际上是文件输入/输出的一种动态形式,C文件就是一个字节流或二进制流。2.文件系统在C语言中有两种处理文件的方法:一种是“缓冲文件系统”;另一种是“非缓冲文件系统”。所谓“缓冲文件系统”是指系统自动在内存区为每个正在使用的文

4、件名开辟一个缓冲区。从内存向磁盘输出数据必须先送到缓冲区,待缓冲区装满后才送到磁盘。如果从磁盘读入数据,则一次从磁盘将一批数据输入到内存缓冲区,然后再依次从缓冲区将数据送到程序数据区,赋给程序变量,如图8-1所示。缓冲区的大小由各具体的C版本确定,一般为512字节。图8-1缓冲文件系统所谓“非缓冲文件系统”是指系统不自动开辟确定大小的缓冲区,而由程序为每个文件设定缓冲区。ANSIC标准规定采用缓冲文件系统。8.1.4文件的访问1.文件的打开通过数据文件向程序提供已知数据,或者将程序处理的中间结果或最后结果存储在数据文件中都要先打开文件。打开文件的fo

5、pen()函数的一般格式如下:FILE*fp;fp=fopen(文件名,文件方式);2.文件的关闭文件使用完毕之后必须关闭它。关闭文件需要使用fclose()函数,它的一般使用格式如下:fclose(fp);3.文件访问函数文件访问包括数据的输入与输出,输入是指通过数据文件向程序提供已知数据,而输出是指将程序处理的中间结果或最后结果存储在数据文件中。(1)字符输入函数fgetc()从文件读一个字符使用fgetc()函数。fgetc()函数的一般格式如下:charc=fgetc(fp);(2)字符输出函数fputc()fputc()函数的一般格式如下:

6、fputc(字符c,fp);(3)字符串输入函数fgets()fgets()函数的一般格式如下:fgets(字符串变量,字符个数n,fp);(4)字符串输出函数fputs()fputs()函数的一般格式如下:fputs(字符串变量,fp);4.文件检测函数(1)Ferror()函数ferror()是文件读写错误的检测函数,它的一般格式如下:ferror(fp);其中,fp是已定义过的文件指针;该函数返回0值表示未出错,返回非0值表示出错。(2)Clearerr()函数clearerr()函数用于清除文件错误标志,它的一般格式如下:clearerr(f

7、p);(3)feof()函数feof()函数用于文件结束检测。对于文本文件,通常可用EOF(-1)作为结束标志;但对于二进制文件,-1可能是字节数据的值。为了正确判定文件的结束,可以通过使用feof()函数来完成,它的一般格式如下:feof(fp);其中,fp是已定义过的文件指针;该函数用于检测文件是否结束。若结束则返回非0值;否则返回0值。8.2二进制文件的访问8.2.1二进制文件的访问对文件按二进制格式进行访问,可以获得比文本文件更高的灵活性,能访问不同类型的文件。在打开文件时如果使用了参数“b”,就可以以二进制格式打开文件。C语言提供了函数以支

8、持对二进制文件的访问。1.格式化输入/输出函数(1)格式化输入函数fscanf()fscanf()函数的一般

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。