c文件读写操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zztingfeng/article/details/82287974

打开文件

c语言使用fopen()函数来打开一个已存在的文件或者创建一个新的文件;

函数调用原型:

FILE *fopen( const char * filename, const char * mode );

其中filename是字符串,用来命名文件,访问模式 mode 的值可以是下列值中的一个:

r

打开一个已有的文本文件,允许读取文件。

w

打开一个文本文件,允许写入文件。如果文件不存在,则会创建一个新文件。在这里,您的程序会从文件的开头写入内容。如果文件存在,则该会被截断为零长度,重新写入。

a

打开一个文本文件,以追加模式写入文件。如果文件不存在,则会创建一个新文件。在这里,您的程序会在已有的文件内容中追加内容。

r+

打开一个文本文件,允许读写文件。

w+

打开一个文本文件,允许读写文件。如果文件已存在,则文件会被截断为零长度,如果文件不存在,则会创建一个新文件。

a+

打开一个文本文件,允许读写文件。如果文件不存在,则会创建一个新文件。读取会从文件的开头开始,写入只能是追加摸式。

二进制文件则为:"rb", "wb", "ab", "rb+", "r+b", "wb+", "w+b", "ab+", "a+b"

 

关闭文件

c语言使用fclose()函数来关闭文件;

函数调用原型为:

int fclose( FILE *fp );

文件关闭成功,函数返回0,关闭失败返回EOF。(EOF为定义在<stdio.h>中的常量)

 

写入文件

c语言使用fputc()函数将字符写入流;

函数原型为:

int fputc( int c, FILE *fp );

如果是字符串则用:

int fputs( const char *s, FILE *fp );

写入成功返回一个非负值,失败返回EOF。

使用 int fprintf(FILE *fp,const char *format, ...) 函数来写把一个字符串写入到文件中。

 

读取文件

c语言使用fgetc()函数将字符写入流;

函数原型为:

int fgetc( FILE * fp );

如果是字符串则用:

char *fgets( char *buf, int n, FILE *fp );

函数 fgets() 从 fp 所指向的输入流中读取 n - 1 个字符。它会把读取的字符串复制到缓冲区 buf,并在最后追加一个 null 字符来终止字符串。

如果这个函数在读取最后一个字符之前就遇到一个换行符 '\n' 或文件的末尾 EOF,则只会返回读取到的字符,包括换行符。

使用int fscanf(FILE *fp, const char *format, ...) 函数来从文件中读取字符串,但是在遇到第一个空格字符时,它会停止读取。

猜你喜欢

转载自blog.csdn.net/zztingfeng/article/details/82287974