前言
本篇详细介绍了 文件顺序读写常用函数,快来看看吧~
欢迎关注个人主页:逸狼
创造不易,可以点点赞吗~
如有错误,欢迎指出~
目录
前言
编辑
文件顺序读写函数
fgetc函数
示例
fputc函数
逐个字符写入
写入26个字母
文件拷贝
fgets函数
fputs函数
读键盘上的字符,再打印在屏幕上
fprintf函数
示例
fscanf函数
示例
fwrite函数
示例
fread函数
示例
sprintf函数
示例
sscanf函数
示例
函数对比
scanf与printf
fscanf与fprintf
sscanf与sprintf
文件顺序读写函数
fgetc函数
用于读取文件内的单个字符
示例
fputc函数
用于将单个字符写入文件中
逐个字符写入
写入26个字母
文件拷贝
写一个代码,完成将data1.txt文件的内容 拷贝一份生成data2.txt
#include<stdio.h>
int main()
{
FILE* pfread = fopen("data1.txt", "r");
if (pfread == NULL)
{
perror("fopen->data1.txt");
return 1;
}
FILE* pfwrite = fopen("data2.txt", "w");
if (pfwrite == NULL)
{
fclose(pfread);//判断为真后,要将pfread置为空指针
pfread = NULL;
perror("fopen->data2.txt");
return 1;
}
//数据的读写(拷贝)
int ch = 0;
//每读一个字符就放入ch中,直到读完为止
while ((ch = fgetc(pfread)) != EOF)
{
fputc(ch, pfwrite);//写入data2.txt文件中
}
fclose(pfread);
fclose(pfwrite);
return 0;
}
fgets函数
读取一行字符
#include<stdio.h>
int main()
{
FILE* pf = fopen("data.txt", "r");
if (pf == NULL)
{
perror("fopen->data1.txt");
return 1;
}
//读一行
//最多读num-1个字符,第num个字符放\0
char arr[20] = "xxxxxxxxxxxxx";
fgets(arr, 10, pf);
fclose(pf);
pf = NULL;
}
fputs函数
写入一行字符
#include<stdio.h>
int main()
{
FILE* pf = fopen("data.txt", "w");
if (pf == NULL)
{
perror("fopen->data1.txt");
return 1;
}
//写文件 写一行
fputs("abcdef\n", pf);
fputs("abcdef\n", pf);
fputs("abcdef\n", pf);
fclose(pf);
pf = NULL;
}
读键盘上的字符,再打印在屏幕上
fprintf函数
格式化打印在文件上,参数比printf 多了一个文件指针
示例
fscanf函数
示例
fwrite函数
以二进制形式写文件
示例
fread函数
以二进制形式读文件
示例
sprintf函数
将格式化数据转换成字符串
示例
sscanf函数
读取字符串并放入标准化数据中
示例
函数对比
scanf与printf
- scanf针对标准输入(键盘)的格式化输入函数
- printf 针对标准输出(屏幕)的格式化输出函数
fscanf与fprintf
- fscanf针对所有输入流的格式化输入的函数
- fprintf 针对所有输出流的格式化输出的函数
sscanf与sprintf
- sscanf 从一个字符串读取一个格式化的数据
- sprintf 把一个格式化的数据转换成字符串