第12章 文件 7
第12章 文件
121文件概述 122文件的使用 123文件程序设计举例 7
12.1 文 件 概 述 12.2 文件的使用 12.3 文件程序设计举例
121文件概述 1211文件的概念 “文件”是指一组相关信息的有序集合。程序 文件是程序代码的有序集合,数据文件是一组数据 的有序集合。通常,文件是驻留在外部介质(如磁 盘等)上的,只有在使用时才调入到内存中。每个 文件都有一个名字,叫做文件名。计算机操作系统 就是根据文件名对各种文件进行存取和处理的。 文件按存放设备可分为磁盘文件和设备文件 两种。 7
12.1 文 件 概 述 12.1.1 文件的概念 “文件”是指一组相关信息的有序集合。程序 文件是程序代码的有序集合,数据文件是一组数据 的有序集合。通常,文件是驻留在外部介质(如磁 盘等)上的,只有在使用时才调入到内存中。每个 文件都有一个名字,叫做文件名。计算机操作系统 就是根据文件名对各种文件进行存取和处理的。 文件按存放设备可分为磁盘文件和设备文件 两种
文件按数据的组织形式又可分为ASCI码文 件和二进制文件两种。 十进制码: 4 ASC码:00110110001100001010000100 11 图121ASCⅡ码文件存储形式 7
文件按数据的组织形式又可分为ASCII码文 件和二进制文件两种。 图12.1 ASCII码文件存储形式 十进制码: 6 8 4 3 ASCII 码: 00110110 00111000 00110100 00110011
ASCⅢ码文件可在屏幕上按字符显示。通 常,源程序文件都是ASCI文件。 二进制文件是按二进制的编码方式来存 放文件的。二进制文件中的数据与该数据的 二进制形式是一致的。例如,同样的整数6 843,转化为二进制数为1101010111011,在二 进制文件中只占用两个字节,其存储形式如 图122所示: 二进制码: 00011010 101on 图122二进制文件存储形式 7
ASCII码文件可在屏幕上按字符显示。通 常,源程序文件都是ASCII文件。 二进制文件是按二进制的编码方式来存 放文件的。二进制文件中的数据与该数据的 二进制形式是一致的。例如,同样的整数6 843,转化为二进制数为1101010111011,在二 进制文件中只占用两个字节,其存储形式如 图12.2所示: 图12.2 二进制文件存储形式 二进制码: 00011010 10 111011
1212缓冲文件系统 文件根据数据存取的实现过程,分为缓 冲文件系统和非缓冲文件系统。 缓冲文件系统又称为高级文件系统,是 指系统会自动为每一个正在使用的文件开辟 个内存缓冲区来输入和输出数据。 非缓冲文件系统又称为低级文件系统, 系统不自动为文件开辟缓冲区,而是由用户 根据所处理的数据的大小在程序中自己设置 缓冲区。 7
12.1.2 缓冲文件系统 文件根据数据存取的实现过程,分为缓 冲文件系统和非缓冲文件系统。 缓冲文件系统又称为高级文件系统,是 指系统会自动为每一个正在使用的文件开辟 一个内存缓冲区来输入和输出数据。 非缓冲文件系统又称为低级文件系统, 系统不自动为文件开辟缓冲区,而是由用户 根据所处理的数据的大小在程序中自己设置 缓冲区
122文件的使用 对文件进行操作时,一般来说应遵循以下步骤。 (1)打开文件 (2)文件处理 (3)关闭文件 7
12.2 文件的使用 对文件进行操作时,一般来说应遵循以下步骤。 (1)打开文件 (2)文件处理 (3)关闭文件
1221文件类型指针 文件类型指针定义的一般形式为: FILE*指针变量名; 其中大写的FE是文件类型定义符,指针 变量名用于指向一个文件,存放的是文件缓冲 区的首地址。 例如, FILE*fp 7
12.2.1 文件类型指针 文件类型指针定义的一般形式为: FILE *指针变量名; 其中大写的FILE是文件类型定义符,指针 变量名用于指向一个文件,存放的是文件缓冲 区的首地址。 例如, FILE *fp;
1222文件的打开 fopen函数用来打开一个文件,其调用的 般形式为 文件指针名=open("文件名","访问方式") 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是一个字符串,是 要打开的文件的名字。“访问方式”是指文件的 类型和操作要求。 例如 FILE *fpl ipl=(aout", r); 7
12.2.2 文件的打开 fopen()函数用来打开一个文件,其调用的一 般形式为 文件指针名=fopen("文件名" , "访问方式") 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是一个字符串,是 要打开的文件的名字。“访问方式”是指文件的 类型和操作要求。 例如: FILE *fp1; fp1=( "a.out","r");
C语言中,访问文件的方式共有12种,表12 1给出了它们的符号和意义。其中:r(read)表 示读,w( write)表示写,a( append)表示追 加,t(text)表示文本文件,可省略不写;b ( banary)表示二进制文件,+表示读和写。 7
C语言中,访问文件的方式共有12种,表12- 1给出了它们的符号和意义。其中:r(read)表 示读,w(write)表示写,a(append)表示追 加,t(text)表示文本文件,可省略不写;b (banary)表示二进制文件,+表示读和写