第12章文件 在程序运行时,程序本身和数据一般都存放在内存中。 当程序运行结束后,存放在内存中的数据被释放 如果需要长期保存程序运行所需的原始数据,或程序运 行产生的结果,就必须以文件形式存储到外部存储介质上 12.1C语言文件概述 122文件的打开与关闭 123文件的读写操作 124位置指针与文件定位 125出错检测 ReturnI
第12章 文 件 在程序运行时,程序本身和数据一般都存放在内存中。 当程序运行结束后,存放在内存中的数据被释放。 如果需要长期保存程序运行所需的原始数据,或程序运 行产生的结果,就必须以文件形式存储到外部存储介质上。 12.1 C语言文件概述 12.2 文件的打开与关闭 12.3 文件的读写操作 12.4 位置指针与文件定位 12.5 出错检测 [Return]
121C语言文件概述 1.文件与文件名 文件是指存放在外部存储介质上的数据集合。 为标识一个文件,每个文件都必须有一个文件名, 其一般结构为:主文件名扩展名 文件命名规则,遵循操作系统的约定。 2.文件分类 可以从不同的角度对文件进行分类: 1)根据文件的内容,可分为程序文件和数据文件, 程序文件又可分为源文件、目标文件和可执行文件, (2)根据文件的组织形式,可分为顺序存取文件和 随机存取文件
12.1 C语言文件概述 1.文件与文件名 文件是指存放在外部存储介质上的数据集合。 为标识一个文件,每个文件都必须有一个文件名, 其一般结构为:主文件名[.扩展名] 文件命名规则,遵循操作系统的约定。 2.文件分类 可以从不同的角度对文件进行分类: (1)根据文件的内容,可分为程序文件和数据文件, 程序文件又可分为源文件、目标文件和可执行文件。 (2)根据文件的组织形式,可分为顺序存取文件和 随机存取文件
(3)根据文件的存储形式,可分为ASCI码文件和二 进制文件 ASCI码文件的每1个字节存储1个字符,因而便于对 字符进行逐个处理。但一般占用存储空间较多,而且要花 费转换时间(二进制与ASCI码之间的转换)。 二进制文件是把内存中的数据,原样输出到磁盘文件 中。可以节省存储空间和转换时间,但1个字节并不对应1 个字符,不能直接输出字符形式。 3.读文件与写文件 所谓读文件是指,将磁盘文件中的数据传送到计算机 内存的操作。 所谓写文件是指,从计算机内存向磁盘文件中传送数 据的操作
(3)根据文件的存储形式,可分为ASCII码文件和二 进制文件。 ASCII码文件的每1个字节存储1个字符,因而便于对 字符进行逐个处理。但一般占用存储空间较多,而且要花 费转换时间(二进制与ASCII码之间的转换)。 二进制文件是把内存中的数据,原样输出到磁盘文件 中。可以节省存储空间和转换时间,但1个字节并不对应1 个字符,不能直接输出字符形式。 3.读文件与写文件 所谓读文件是指,将磁盘文件中的数据传送到计算机 内存的操作。 所谓写文件是指,从计算机内存向磁盘文件中传送数 据的操作
构成文件的基本单元与流式文件 C语言将文件看作是由一个一个的字符(ASCI码文 件)或字节(二进制文件)组成的。将这种文件称为流式 文件 而在其它高级语言中,组成文件的基本单位是记录 对文件操作的基本单位也是记录 5.文件类型FILE 系统给每个打开的文件都在内存中开辟一个区域,用 于存放文件的有关信息(如文件名、文件位置等)。这些 信息保存在一个结构类型变量中,该结构类型由系统定义 取名为FIE。 注意:结构类型名“FILE”必须大写
4.构成文件的基本单元与流式文件 C语言将文件看作是由一个一个的字符(ASCII码文 件)或字节(二进制文件)组成的。将这种文件称为流式 文件。 而在其它高级语言中,组成文件的基本单位是记录, 对文件操作的基本单位也是记录。 5.文件类型FILE 系统给每个打开的文件都在内存中开辟一个区域,用 于存放文件的有关信息(如文件名、文件位置等)。这些 信息保存在一个结构类型变量中,该结构类型由系统定义、 取名为FILE。 注意:结构类型名“FILE”必须大写
6. ANSI C的缓冲文件系统 所谓缓冲文件系统是指,系统自动地在内存区为每 个正在使用的文件开辟一个缓冲区 从内存向磁盘输出数据时,必须首先输出到缓冲区 中。待缓冲区装满后,再一起输出到磁盘文件中 从磁盘文件向内存读入数据时,则正好相反:首先 将一批数据读入到缓冲区中,再从缓冲区中将数据逐个 送到程序数据区。 Return
6.ANSI C的缓冲文件系统 所谓缓冲文件系统是指,系统自动地在内存区为每 个正在使用的文件开辟一个缓冲区。 从内存向磁盘输出数据时,必须首先输出到缓冲区 中。待缓冲区装满后,再一起输出到磁盘文件中。 从磁盘文件向内存读入数据时,则正好相反:首先 将一批数据读入到缓冲区中,再从缓冲区中将数据逐个 送到程序数据区。 [Return]