1.头文件
#include <stdio.h>
2.打开文件
fopen(char * 指针,打开方式);
参数一: 一个地址 char *类型
参数二: r :读 O_RDONLY
w :空文件 O_WRONLY | O_CREAT | O_TRUNC
a : 追加 O_WRONLY | O_APPEND | O_CREAT
+ : 在前面的基础上 把ONLY 改为 O_RDWR
PS :只读、只写、读写三者互斥,不允许rw这些
FILE * fp; //FILE是一种数据类型
fp = fopen("a.txt", "w"); //参数一:文件路径 参数二:打开方式 w理解为得到的结果是空文件
if(fp == NULL)
{
//把出错信息打印标准出错流中 errno为全局变量 stderror(errno)根据变量值生成对应的错误信息
perror("打开文件失败");
goto file_open_fail;
}
3.写入文件
fwrite(buffer, sizeof(buffer) , 1 , fp);
参数一 : 从内存哪个地址
参数二 : 一块多少字节
参数三 : 多少块
参数四 : 写到哪个文件
参数二+参数三就相当于 长度 ,函数就是从 buffer地址 搬 这么长 到 文件
4.读文件
fread(buffer , 10 , 1 , fp);
理解参考:写入文件,只是移动方向反过来
5.关闭文件
fclose(fp);
略
6.文件长度
fseek(fp, 0, SEEK_END); //把file_pos ↑ 指向文件末尾,
ftell(fp); //把文件开头理解为起点,ftell()就是当前位置是在10个字节还是20字节位置
rewind(fp); //把file_pos ↑ 指回到开头 等价于 fseek(fp, 0, SEEK_SET);