在C语言编程中,fputs()和fgets()函数用于从流中写入和读取字符串。
下面来看看看如何使用fgets()和fgets()函数写和读文件。
写文件:fputs()函数 fputs()函数将一行字符串写入文件,它将字符串输出到流。
其行为方式如下:
(1)遇到换行或文件结束EOF则返回。
(2)按行读取。
(3)每一行结束处的换行字符'/n’也算该行字符。
(4)对于大小为size的buf,最多只读取size-1个字符。
(5)自动地把buf中最后一个字符(通常是换行符)的后面一个字节填充零结束符('/0')。
fputs()函数的语法:
int fputs(const char *s, FILE *stream)
示例:创建一个源文件:fputs-write-file.c,其源代码如下 -
#include<stdio.h>
//20200427
void main() {
FILE *fp;
fp = fopen("my-write-file.txt", "w");
fputs("hello c programming \n", fp);
fputs("performance c programming \n", fp);
printf("all content had write to file: my-write-file.txt\n");
fclose(fp);
}
all content had write to file: my-write-file.txt
hello c programming
performance c programming
读取文件:fgets()函数 fgets()函数从文件中读取一行字符串,它从流中获取字符串。
其行为方式如下:
(1)把str中零结束符之前的全部文字输入到文件中。
(2)输入完成后,不会增加额外的特殊字符,如换行符等。
语法:
char* fgets(char *s, int n, FILE *stream)
示例:创建一个源文件:fgets-read-file.c,其代码如下所示 :
#include<stdio.h>
//20200427
void main()
{
FILE *fp;
char text[300];
fp = fopen("my-write-file.txt", "r");
printf("%s", fgets(text, 200, fp)); // 第一行
printf("%s", fgets(text, 200, fp)); // 第二行
fclose(fp);
}
hello c programming
performance c programming
联系客服