一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第十三天,点击查看活动详情。
文件操作
前言
接上篇,这里我们学习文件操作~(注:学习笔记)
文件的关闭(fclose函数)
函数调用:
fclose(文件指针);
函数功能:使文件指针变量不指向该文件,也就是文件指针变量与文件"脱钩",此后不能在通过该指针对原来与其相联系的文件进行读写操作。
返回值:关闭成功返回值为0;否则返回EOF(-1)
文件的读写
对文件的读和写使最常用的文件操作。在C语言中提供了多种文件读写的函数:
- 字符读写函数:fgetc()和fputc()
- 字符串读写函数:fgets()和fputs()
- 数据块读写函数:fread()和fwrite()
- 格式化读写函数:fscanf()和fprintf()
fputc()&fgetc()
一、fputc()函数调用:
fputc(ch,fp);
函数功能:将字符(ch的值:ASCII码)输出到fp所指向的文件中去。
对于fputc函数的使用注意:
-
用写或读写方式打开一个已存在的文件时讲清楚原有的文件内容,写入字符从文件首开始。如需保留原有文件内容,希望写入的字符以文件末开始存放,必须以追加方式打开文件。被写入的文件若不存在,则创建该文件。
-
这里的写入字符从文件末开始存放追加方式有两种:
- “at” :追加打开一个文本文件,并在文件末尾写数据
- “ab” :追加打开一个二进制文件,并在文件末尾写数据
-
-
每写入一个字符,文件内部位置指针向后移动一个字节。
-
fputc函数有一个返回值,如写入成功则返回写入的字符,否则返回一个EOF。可用此来判断写入是否成功。
#include<stdio.h>
#include<stdlib.h>
//wt+:读写打开或建立一个文本文件。允许读写
int main(){
FILE *fp;
char ch,filename[20];
printf("Please input the filename you want to write:");
scanf("%s",filename);
if(!(fp = fopen(filename,"wt+"))){
printf("Can not open the file!\n");
exit(0);
}
printf("Please input the sentences you want to write:");
//输入的内容会保存在你现在创建的这个项目文件夹中
ch = getchar();//第一个getchar()用于吸收输入缓冲区中scanf遗留的换行符
ch = getchar();
while(ch != EOF){ //ctrl+z结束
fputc(ch,fp);
ch = getchar();
}
fclose(fp);
return 0;
}
声明
本篇是跟着b站上的小甲鱼视频学习时候做的笔记,方便以后复习,希望每天都能进步一点点!!!
链接附上:C语言学习之小甲鱼视频链接