913文件类型指针 C语言的缓冲文件系统中,用文件类型指针来表示文件。 定义文件类型指针的一般形式: FILE*指针变量名; C编译系统定义的一种结构体类型, 指针变量用于指向一个文件, 其中的成员用于存放有关文件的一 实际上是用于存放文件缓冲区 些信息(文件名、文件状态和文件 的首地址。 当前读写位置等) FILE结构体是在头文件< stdio. h>中定义的,对文件操作的程 序,在最前面都应写上文件包含命令:# nclude< stdio. h> C语言通过文件指针变量对文件进行打开、读、写及关闭操作。 ☆☆第9章文件操作
☆☆ 第9章 文件操作 6 9.1.3 文件类型指针 • C语言的缓冲文件系统中,用文件类型指针来表示文件。 • 定义文件类型指针的一般形式: FILE *指针变量名; C编译系统定义的一种结构体类型, 其中的成员用于存放有关文件的一 些信息(文件名、文件状态和文件 当前读写位置等) 指针变量用于指向一个文件, 实际上是用于存放文件缓冲区 的首地址。 • FILE结构体是在头文件<stdio.h>中定义的,对文件操作的程 序,在最前面都应写上文件包含命令:#include < stdio.h > • C语言通过文件指针变量对文件进行打开、读、写及关闭操作
913文件类型指针 FIE结构体类型在头文件 stdio. h中定义如下 typedef struct short level /文件缓冲区占用程度 unsigned fl /文件状态标志 char /文件描述符* unsigned char hold /*若无缓冲区不读取字符* short bsize: /文件缓冲区大小 unsigned char* buffer;/数据缓冲区的位置* unsigned char*curp;/指针当前的位置 unsigned istemp;/临时文件指示器* short token;/用于操作有效性检查* 3 FILE; /文件类型符 在编程时不必关心FLE结构的具体细节,只需在使用O函数 时用这个文件指针变量来指定所操作的文件。 ☆☆第9章文件揉作
☆☆ 第9章 文件操作 7 FILE结构体类型在头文件stdio.h中定义如下: typedef struct { short level; /*文件缓冲区占用程度*/ unsigned flags; /*文件状态标志*/ char fd; /*文件描述符*/ unsigned char hold; /*若无缓冲区不读取字符*/ short bsize; /*文件缓冲区大小*/ unsigned char *buffer; /*数据缓冲区的位置*/ unsigned char *curp; /*指针当前的位置*/ unsigned istemp; /*临时文件指示器*/ short token; /*用于操作有效性检查*/ } FILE; /*文件类型符*/ 9.1.3 文件类型指针 •在编程时不必关心FILE结构的具体细节,只需在使用I/O函数 时用这个文件指针变量来指定所操作的文件
913文件类型指针 在C语言程序中使用文件,需要完成以下工作: 1)声明一个FE类型的文件指针变量; 2)打开文件: 调用 fopen函数将此文件指针变量和某一个实际的磁盘文件相 联系。要求指定文件名,并且说明对该文件是输入操作还是 输出操作。 3)读写文件: 调用适当的文件操作函数完成必要的JO操作。 对输入文件来说,函数从文件中将数据读取至程序中; 对输出文件来说,函数将程序中的数据转移到文件中去 4)关闭文件: 调用 fclose函数表明文件操作结束,断开文件指针与实际文件 之间的联系。 ☆☆第9章文件操作 8
☆☆ 第9章 文件操作 8 9.1.3 文件类型指针 在C语言程序中使用文件,需要完成以下工作: 1)声明一个FILE类型的文件指针变量; 2)打开文件: 调用fopen函数将此文件指针变量和某一个实际的磁盘文件相 联系。要求指定文件名,并且说明对该文件是输入操作还是 输出操作。 3)读写文件: 调用适当的文件操作函数完成必要的I/O操作。 对输入文件来说,函数从文件中将数据读取至程序中; 对输出文件来说,函数将程序中的数据转移到文件中去。 4)关闭文件: 调用fclose函数表明文件操作结束,断开文件指针与实际文件 之间的联系
92文件的打开与关闭 921文件的打开 打开文件,实际上 打开文件使用函数 fopen 是建立文件的各种有 其调用的一般形式为: 关信息,并使文件指 针指向该文件; 文件指针名=open(文件名","文件打开模式") 缓冲文件系统借助 文件指针来对文件进 行管理和访问,既可 需要打开的 确定文件的 文件的名字 以读写字符、字符串、 数据操作方式 格式化数据,也可以 “文件名”和“文件打开模式”都 读写二进制数据。 是字符串常量或字符数组。 ☆☆第9章文件操作
☆☆ 第9章 文件操作 9 9.2 文件的打开与关闭 9.2.1 文件的打开 打开文件,实际上 是建立文件的各种有 关信息,并使文件指 针指向该文件; 缓冲文件系统借助 文件指针来对文件进 行管理和访问,既可 以读写字符、字符串、 格式化数据,也可以 读写二进制数据。 • “文件名”和“文件打开模式”都 是字符串常量或字符数组。 文件指针名=fopen("文件名","文件打开模式") 需要打开的 文件的名字 确定文件的 数据操作方式 打开文件使用函数fopen 其调用的一般形式为:
举例 FILE *fp fp=fopen( source. txt",r); 作用: 以读的方式(“r”模式即表示读“read”)打开当前目录下 文件名为 source. txt的文件。 如果打开文件成功,则返回一个指向 source. txt文件信息区 的起始地址的指针,并赋值给p,即印指向了文件 source. txt o 其后所有对该文件的操作都必须通过印指针来实现。 如果文件打开失败,则返回一个空指针NULL,赋值给po 说明: 文件名可以包含路径和文件名两部分。 ■写路径时,因为转义字符以反斜杠开头,所以“”才是表 示一个反斜杠。 ■【例】若路径和文件名为:“c: itelsource. txt”,则应写成 c:\tc\ Source.txt”。 ☆☆第9章文件操作
☆☆ 第9章 文件操作 10 举 例 FILE *fp; fp=fopen("source.txt","r"); 作用: 以读的方式(“r”模式即表示读“read”)打开当前目录下 文件名为source.txt的文件。 如果打开文件成功,则返回一个指向source.txt文件信息区 的起始地址的指针,并赋值给fp,即fp指向了文件source.txt。 其后所有对该文件的操作都必须通过fp指针来实现。 如果文件打开失败,则返回一个空指针NULL,赋值给fp。 说明: 文件名可以包含路径和文件名两部分。 写路径时,因为转义字符以反斜杠开头,所以“\\”才是表 示一个反斜杠。 【例】若路径和文件名为:“c:\tc\source.txt”,则应写成 “c:\\tc\\source.txt