第12单元项目设计用到的文件功能.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第12单元项目设计用到的文件功能

第12单元 项目设计用到的文件功能 教学目标 介绍C语言 流式文件概念 三类文件读写函数。 学习要求 通过本单元的学习 1. 能熟练运用下列文件处理库函数: fopen, fclase, fgetc, fputc, fgets, fputs, fseek, ftell, fprintf, fscanf, fread, fwrite 2. 能编写一般的文件处理类程序。 本单元授课内容 文件的概念 文件的打开/关闭 按字符方式读写文件 按格式读写文件 一、文件概述 在C语言中没有设置专门的输入、输出语句。I/O功能由I/O库函数来处理。 这些函数的共同之处是数据I/O操作都是通过标准输入设备 (一般为键盘) 和标准输出设备 (一般为显示器)进行。 大量I/O数据如何处理?靠键盘输入??不是。 大量I/O数据用什么方式处理?——文件! 1、文件 所谓文件,就是存于计算机中,具有唯一标识名的相关的一批数据的集合。 相关是指逻辑上有联系的一批数据(可以是一批实验数据,或者一篇文章,一幅图象,甚至一段程序等)。每个文件在磁盘中的具体存放位置、格式以及读写等工作都由文件系统管理。 文件系统可以实现文件的“按名”操作。 文件操作包括:读、写、删除、拷贝、显示和打印等。 文件处理的单位 文件系统是以文件为单位,对文件的整体进行处理,例如删除文件、拷贝文件等等。 应用程序则是对文件的内容进行处理。由于文件的内容可能千变万化, 文件的大小各不相同, 那么以什么为单位处理文件中的数据呢? C语言中引入了流式文件(stream)的概念, 即无论文件的内容是什么,一律看成是由字符(或字节)构成的序列,即字符流。流式文件中的基本单位是字节, 磁盘文件和内存变量之间的数据交流以字节为基础。 数据库系统中,是以记录为单位对数据的处理的。 如果实际数据还有比按字节划分更高级的逻辑结构, 可以通过一次读写多个字节来实现。 流式文件处理中的基本概念 读: 从文件中将数据拷贝到内存变量中来。根据情况不同, 一次可以读一个字节, 也可以根据内存变量的大小读相应数量的字节, 甚至可以一次将一批数据读到一片连续的存储区 (如数组或动态分配的存储块) 中; 写: 将内存变量中的数据拷贝到文件中去。和读文件的情况相似, 一次可以将一个变量或者一片连续存储区中的数据写入文件; 文件指针: 由于通常文件中的数据很多, 所以在读写时应该指明是对哪些数据进行操作。在流式文件中采用的方法是设立一个存放文件读写位置的变量, 称为文件指针。在开始对某文件进行操作时将文件指针的值设置为0,表示读写操作应从文件首部开始执行; 每次读、写之后, 自动将文件指针的值加上本次读、写的字节数, 作为下次读写的位置。 缓冲区 由于磁盘的读写速度比内存的处理速度要慢一个数量级,而且磁盘驱动器是机电设备,定位精度相对比较差, 所以磁盘数据存取以扇区 (sector,磁盘上某磁道中的一个弧形段,定长,例如512B或1024B)或者簇 (cluster,由若干连续的扇区组成)为单位。具体做法是在内存中划出一片存储单元,称为缓冲区。从磁盘中读取数据时先将含有该数据的扇区或簇读到缓冲区中,然后再将具体的数据拷贝到应用程序的变量中去。下次再读数据时, 首先判断数据是否在缓冲区中,如果在,则直接从缓冲区中读,否则就要从磁盘中再读另一个扇区或簇。向磁盘中写数据也是这样,数据总是先写入缓冲区中,直到缓冲区写满之后再一起送入磁盘。为了能使应用程序同时处理若干个文件,就必需在内存中开辟多个缓冲区。对缓冲区的管理是操作系统的基本功能之一。 2.缓冲文件的处理库函数 库函数按其功能可以分为三类: 1.用于打开和关闭文件, fopen()、fclose() 2.用于读、写文件;又可按处理文件中数据的方式分为按字符读写、格式读写和二进制读写等几组函数; 3.文件指针管理函数;包括文件指针重新定位fseek()、求当前文件指针位置ftell()和文件结束检测feof()等函数。 二、文件的打开与关闭 打开文件 如果要对一个文件进行操作,就必须为其准备相应的缓冲区、缓冲区管理变量和文件指针。在头文件stdio.h 中定义了一个名为FILE的头文件stdio.h中定义了一个名为FILE的结构体类型。在使用一个文件之前,必须将文件和一个特定的FILE类型的变量联系起来, 这个工作就叫做打开文件。 打开文件由fopen()函数实现 关闭文件 如果应用程序不再使用某个文件了,就应该及时将其占用的缓冲区等资源释放,这个工作就叫做关闭文件。 关闭文件可以使用fclose()函数完成。 1、 fopen()函数 fopen()函数的原型为: FILE *fopen(char *filename

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档