第九章文件 本章的主要内容包括: ◆C语言文件概念 ◆C语言的文件操作库函数 回首页
本章的主要内容包括: C语言文件概念 C语言的文件操作库函数 第九章 文件 回首页
9.1文件基本概念 本节的主要概念包括 文件是具有名字、存储于外存的数据的集合 ◆操作系统管理文件的方法 ◆每个文件或目录必须有也只能有一个唯一的名字,包括盘符名、路径、 主文件名和文件扩展名4部分信息 ◆文件输入输出 程序在内存中运行的过程中与外存交互主要是通过以下两种方法 (1)以文件为单位将数据写到外存中; (2)从外存中根据文件名读取文件中的数据 将向外存写入信息称为“输出”,由外存取信息称为“输入” 讨论C语言如何处理输入输出: 文件分类,流,设备文件,I0缓冲 C语言基本文件操作:创建(打开文件)、撤消(关闭文件)、读写(通 过流对文件的读和写)及其他辅助函数
本节的主要概念包括: 文件是具有名字、存储于外存的数据的集合。 操作系统管理文件的方法 每个文件或目录必须有也只能有一个唯一的名字,包括盘符名、路径、 主文件名和文件扩展名4部分信息。 文件输入输出: 程序在内存中运行的过程中与外存交互主要是通过以下两种方法: (1)以文件为单位将数据写到外存中; (2)从外存中根据文件名读取文件中的数据。 将向外存写入信息称为“输出” ,由外存取信息称为“输入”。 讨论C语言如何处理输入输出: 文件分类,流,设备文件,IO缓冲 C语言基本文件操作:创建(打开文件)、撤消(关闭文件)、读写(通 过流对文件的读和写)及其他辅助函数。 9.1 文件基本概念
9.2文件的使用 EOF是 stdio.h中定义的宏,它的值是-1。在文件操作 经常用来表示文件操作的结果状态。 9.2.1文件指针类型 系统为每一个使用的文件在内存中开辟一个存储区,存放文件的 有关信息,这些信息用一个结构变量保存,该结构类型的名字 是FILE 系统为每一个打开的文件分配一个区,存放FIE结构,程序通过 FILE类型指针建立和文件的联系,进行关于文件的一切操作 指向文件结构类型的指针叫文件指针。如FILE*fp; 通过打开文件的操作,一个文件与指针变量f建立联系,通过fp, 能够访问印关联的文件,所有关于该文件的读写操作均通过fp 成
EOF是stdio.h中定义的宏,它的值是-1。在文件操作 经常用来表示文件操作的结果状态。 9.2.1 文件指针类型 系统为每一个使用的文件在内存中开辟一个存储区,存放文件的 有关信息,这些信息用一个结构变量保存,该结构类型的名字 是FILE。 系统为每一个打开的文件分配一个区,存放FILE结构,程序通过 FILE类型指针建立和文件的联系,进行关于文件的一切操作。 指向文件结构类型的指针叫文件指针。如 FILE *fp; 通过打开文件的操作,一个文件与指针变量fp建立联系,通过fp, 能够访问fp关联的文件,所有关于该文件的读写操作均通过fp 完成。 9.2文件的使用
9.2.2文件的打开和关闭 92:文件打开(opem函数) fopen函数打开文件,返回FILE指针值。用FILE指针变量接受 fopen 返回值后,就可以通过指针进行各种文件操作。 FILE *fopen(const char *filename, const char *mode) 打开方式 r″按读方式打开文本文件,如找不到文件则失败 w"按写方式打开(创建)文本文件,如文件已有则丢弃原有内容。 "a"按添加方式打开或创建文本文件,在已有部分之后写 "r+"读更新方式,可以对文本文件读或写 ●"w+"写更新方式,可以对文本文件写读,如文件存在则丢弃原内容。 “a+”添加并可读方式,从文件尾接着写。 讨论各种打开方式的特点和要求
9.2.2.1 文件打开(fopen函数) fopen函数打开文件,返回FILE指针值。用FILE指针变量接受fopen 返回值后,就可以通过指针进行各种文件操作。 FILE *fopen(const char *filename, const char *mode) 打开方式 : "r" 按读方式打开文本文件,如找不到文件则失败。 "w" 按写方式打开(创建)文本文件,如文件已有则丢弃原有内容。 "a" 按添加方式打开或创建文本文件,在已有部分之后写。 "r+" 读更新方式,可以对文本文件读或写。 "w+" 写更新方式,可以对文本文件写读,如文件存在则丢弃原内容。 “a+” 添加并可读方式,从文件尾接着写。 讨论各种打开方式的特点和要求。 9.2.2 文件的打开和关闭
9.2.2文件的打开和关闭 92.22文件关闭(lose函数) 关闭文件用函数 fclose,原型是: int fclose FIlE *fp) ●关闭操作使文件指针变量不再指向与该文件对应的FILE结构,从而 断开与文件的关联。 ●关闭文件操作会引起系统对文件缓冲区的一系列操作,将输出流缓 冲区数据输出到文件;对输入流丢掉缓冲区内容:释放动态缓冲 区。操作正常返回0,否则返回EOF。如果不关闭文件,将会丢失 数据,应该养成在使用完文件后关闭文件的习惯。 个C程序能同时打开的文件数有限,文件用完后应及时关闭。程序 退出时所有文件将自动关闭
9.2.2.2 文件关闭(fclose函数) 关闭文件用函数fclose,原型是: int fclose(FILE *fp) 关闭操作使文件指针变量不再指向与该文件对应的FILE结构,从而 断开与文件的关联。 关闭文件操作会引起系统对文件缓冲区的一系列操作,将输出流缓 冲区数据输出到文件;对输入流丢掉缓冲区内容;释放动态缓冲 区。操作正常返回0,否则返回EOF。如果不关闭文件,将会丢失 数据,应该养成在使用完文件后关闭文件的习惯。 一个C程序能同时打开的文件数有限,文件用完后应及时关闭。程序 退出时所有文件将自动关闭。 9.2.2 文件的打开和关闭