C语言文件操作的方法
C语言是时下应用非常广泛的一种编程语言,它具有良好的跨平台特性,虽然C语言已经是一门相对古老的编程语言,但是它的生命力依旧旺盛。本文主要介绍一下使用C语言进行文件操作的方法。
操作方法
- 01
C语言标准库中文件操作的函数主要有fopen、fclose、fread、fwrite、fgets、fputs、fprintf、fscanf等,下面以一些示例介绍一下各函数的用法。示例程序以VS2013开发。
- 02
首先我们看下图的示例代码,用到了四个文件操作函数:fgets、fopen、fputs、ferror、fclose。此示例的运行结果是将终端输入的字符串保存到本地文件中。
- 03
程序最开始定义了两个变量,一个FILE类型的指针变量fp,该指针用来指向即将打开的文件,后续对文件所有的操作都依赖它;还有一个字符类型指针变量,并且给它分配了内存空间,用来存放从标准输入读取的数据。
- 04
使用fopen函数打开了一个文件,该函数的函数原型:FILE *fopen(char *pname, char *mode),其中第一个参数pname为文件名称,第二个参数mode为打开文件的方式,示例程序中使用的mode为"wb",表示以写的方式打开一个二进制文件,如果文件不存在则新建文件。
- 05
接下来调用fgets从标准输入读取数据,然后调用fputs将数据写入到文件。fgets函数原型:char *fgets(char *str, int n, FILE *fp),该函数的作用是从fp指向的文件中读取n-1个字符,并把他们存放到str指向的字符数组中,最后加上一个由字符串结束符'\0'。正常返回str的值,异常返回NULL。fputs函数是将字符串写入到文件中。
- 06
由于fgets函数在读取到文件尾和读取发生错误时,返回值都是NULL,因此需要通过ferror函数来判断是读取到了文件尾,还是发生了错误。ferror函数的作用是检查由fp指向的文件在读写时是否出错。返回值为0表示无错误,为1表示出错。
- 07
最后释放内存,并调用fclose关闭文件。
- 08
该示例程序的运行效果如下图所示。