C语言fgets()和fputs():以字符串的形式读写文件(附带实例)
fgetc() 和 fputc() 函数每次只能读写一个字符,速度较慢;实际开发中往往是每次读写一个字符串或者一个数据块,这样能明显提高效率。
fputs() 函数的一般形式如下:
【实例】向指定的文件写入“https://c.biancheng.net/c/”。具体代码如下:
fgets() 函数的一般形式如下:
【实例】在 E 盘先创建一个文件,文件的内容为“https:/c.biancheng.net/c/”,再运行程序读取这个文件。具体代码如下:
C语言fputs()函数
fputs() 函数与 fputc() 函数类似,区别在于 fputc() 函数每次只向文件中写入一个字符,而 fputs() 函数每次向文件中写入一个字符串。fputs() 函数的一般形式如下:
fputs(字符串,文件指针)有以下几点说明:
- 字符串可以是字符串常量,也可以是字符数组名或字符指针变量名;
- 文件指针指向由 fopen() 打开的一个文件,这里写文件指针变量;
- 该函数的作用是向文件指针所指向的文件写入一个字符串,同时将读/写位置指针向前移动与字符串长度相同的字节;
- 输出成功,函数返回值为正整数,否则返回 EOF。
【实例】向指定的文件写入“https://c.biancheng.net/c/”。具体代码如下:
#define _CRT_SECURE_NO_WARNINGS /*解除vs安全性检测问题*/ #include<stdio.h> #include<process.h> void main() { FILE* fp; /*定义一个指向FILE类型结构体的指针变量*/ char filename[30], str[30]; /*定义两个字符型数组*/ printf("please input filename:\n"); scanf("%s", filename); /*输入文件名*/ if ((fp = fopen(filename, "w")) == NULL) /*判断文件是否打开失败*/ { printf("can not open!\n Press any key to continue:\n"); getchar(); exit(0); } printf("please input string:\n"); /*提示输入字符串*/ getchar(); gets(str); fputs(str, fp); /*将字符串写入fp所指向的文件*/ fclose(fp); /*关闭文件*/ }运行程序后:
please input filename:
E:\\demo.txt
please input string:
https:/c.biancheng.net/c/
C语言fgets()函数
fgets() 函数与 fgetc() 函数类似,区别在于 fgetc() 函数每次从文件中读出一个字符,而 fgets() 函数每次从文件中读出一个字符串。fgets() 函数的一般形式如下:
fgets(str,n,文件指针);有以下几点说明:
- str 是一个字符指针,存放字符串的起始地址,n 是一个整型数据,文件指针指向由 fopen() 打开的一个文件,这里写文件指针变量
- 该函数的作用是从文件指针指向的文件中读出 n-1 个字符到以 str 为起始地址的空间内,并在尾端自动加入一个结束标识符“\0”,同时将读/写位置指针向前移动与字符串长度相同的字节。
- 在读出 n-1 个字符之前,如果遇到换行符或 EOF,则读出结束。
- 此函数的返回值是 str。
【实例】在 E 盘先创建一个文件,文件的内容为“https:/c.biancheng.net/c/”,再运行程序读取这个文件。具体代码如下:
#define _CRT_SECURE_NO_WARNINGS /*解除vs安全性检测问题*/ #include<stdio.h> #include<process.h> void main() { FILE* fp; /*定义一个指向FILE类型结构体的指针变量*/ char filename[30], str[30]; /*定义两个字符型数组*/ printf("please input filename:\n"); scanf("%s", filename); /*输入文件名*/ if ((fp = fopen(filename, "r")) == NULL) /*判断文件是否打开失败*/ { printf("can not open!\n Press any key to continue\n"); getchar(); exit(0); } fgets(str, sizeof(str), fp); /*读取磁盘文件中的内容*/ printf("%s", str); printf("\n"); fclose(fp); /*关闭文件*/ }程序运行过程为:
please input filename:
E:\\demo.txt
https:/c.biancheng.net/c/
相关文章
- C语言fgets和fputs函数的用法详解(以字符串的形式读写文件)
- C语言fgetc()和fputc():以字符形式读写文件(附带实例)
- C语言fgetc和fputc函数用法详解(以字符形式读写文件)
- C语言fgets()和fputs()函数的用法(非常详细,附带实例)
- C语言fgetc()和fputc()函数的用法(非常详细,附带实例)
- gets和fgets函数及其区别,C语言gets和fgets函数详解
- C语言读取文件(fscanf()、fgetc()和fgets())
- C语言输入函数汇总(scanf、getchar、gets和fgets)
- C语言fgets():从文件读取一个字符串
- fgets函数及其用法,C语言fgets函数详解