8.1 打开和关闭文件
文件操作步骤是:第一步,打开文件;第二步,文件操作(读文件、写文件、文件查找);第三步,关闭文件。操作文件需要使用文件指针。文件的指针不是指向一段内存空间,而是指向描述有关这个文件的相关信息的一个文件信息结构体,在C语言中所有对文件的操作都通过文件指针完成。声明一个文件指针后,就可以使用它进行文件的打开、读写和关闭等操作了。
声明文件指针的语法格式如下:
FILE*文件指针名;
功能:声明一个文件指针。
8.1.1 打开文件
打开文件就是通过建立文件指针,把程序中对文件的操作与磁盘上实际的数据文件联系起来。打开文件的函数是fopen函数,格式如下:
功能:
以指定的打开方式打开一个指定的文件,并使文件指针fp指向该文件。如果文件打开成功,fopen函数返回一个指向FILE类型的指针值(非0值);如果文件不能打开,则返回空指针值NULL。
参数说明:
fopen函数包含两个参数,调用时都必须用双引号引起来。第一个参数“文件名”表示要打开的磁盘文件的文件名,如果该参数包含文件的路径,则按该路径读取文件,如果省略了文件路径,则默认为当前目录;第二个参数表示的是文件的打开方式,如表8-1所示。
表8-1 文件打开方式
由于某些原因,可能导致文件打开失败,所以需要检查打开操作是否成功,只有打开成功才能继续执行文件其他操作。
检查打开操作代码如下:
如果函数的返回值为NULL,说明文件打开失败,显示文件无法打开的信息,结束文件操作;如果文件打开成功,则文件指针fp为非0值,执行后续文件操作指令。
8.1.2 关闭文件
当文件的读或写操作完成后,应及时关闭文件,断开文件指针和文件的联系。同时系统会把文件缓冲区中的数据保存到磁盘文件中,防止因未关闭文件时结束程序运行,导致文件数据丢失。关闭文件的函数是fclose函数,其一般使用格式如下:
fclose(文件指针);
8.1.3 文件结束检测
feof函数用于检测文件是否结束,即是否到达文件尾部。feof函数既适用于二进制文件,也适用于文本文件。使用格式如下:
feof(文件指针);
若已读到文件末尾,feof函数返回值为1;否则,返回值为0。
在读文件操作时,需要检测是否读到文件的结尾处,防止读取文件失败,读取检测文件代码如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。