功能分类
功能类别 |
常用函数 |
解释 |
写文件(输出) |
fprintf() 、fputs() 、fputc() 、fwrite() |
把内容写进文件 |
读文件(输入) |
fscanf() 、fgets() 、fgetc() 、fread() |
从文件读出内容 |
打开/关闭文件 |
fopen() 、fclose() |
打开或关闭文件 |
文件文本位置控制 |
fseek() 、ftell() 、rewind() |
控制“读写光标”位置 |
检测文件状态 |
feof() 、ferror() 、clearerr() |
判断是否读到末尾、出错等 |
写入文件函数解析
函数 |
功能 |
举例 |
文件内容 |
fprintf(fp, "%d", x) |
写格式化文本(数字→文字) |
写入 123 |
"123" |
fputs("abc", fp) |
写一整串字符串 |
"abc" |
"abc" |
fputc('A', fp) |
写一个字符 |
'A' |
"A" |
fwrite(&x, sizeof(int), 1, fp) |
写原始二进制数据 |
123 |
01111011 (看不懂的二进制) |
读取文件函数解析
函数 |
功能 |
举例 |
说明 |
fscanf(fp, "%d", &x) |
读格式化文本 |
读出“123” |
文本读法 |
fgets(buf, n, fp) |
读一行文本到字符串 |
读到 “hello\n” |
常用于文本文件 |
fgetc(fp) |
读一个字符 |
读出 'A' |
一次 1 字节 |
fread(&x, sizeof(int), 1, fp) |
读原始二进制数据 |
读出 int 值 123 |
常用于二进制文件 |
文件文本位置控制函数解析
函数 |
功能 |
举例 |
说明 |
fseek(fp, offset, origin) |
移动文件指针 |
fseek(fp, 0, SEEK_END) |
跳到文件末尾 |
ftell(fp) |
获取当前位置 |
返回当前指针偏移量 |
|
rewind(fp) |
回到开头 |
rewind(fp) |
快速重置到文件头 |
文件状态检测函数解析
函数 |
功能 |
解释 |
feof(fp) |
判断是否到达文件末尾 |
“读完了吗?” |
ferror(fp) |
判断是否出错 |
“读写出问题了吗?” |
clearerr(fp) |
清除错误状态 |
“重置错误标志” |
打开/关闭文件函数代码举例
#include <stdio.h>int main() {FILE *fp = fopen("data.bin", "wb"); // 以"wb"二进制写方式打开"data.bin"文件int num = 65;fwrite(&num, sizeof(int), 1, fp); // 写入num"65"的二进制值fclose(fp); //关闭文件释放内存fp = fopen("data.bin", "rb"); // 重新打开"rb"读int readNum;fread(&readNum, sizeof(int), 1, fp); // 读出二进制值的十进制值printf("读出的值: %d\n", readNum); // 输出:65fclose(fp); //关闭文件释放内存return 0;
}
- 打开文件函数的模式解析:C 语言 - fopen、fprintf、fread、fwrite、fputc 操作文件函数解析