1.头文件
文件操作的函数在stdlib.h头文件中。
2.打开文件
FILE *fp;//定义了一个文件指针
fp = fopen(“文件路径”,“打开方式”);//参数是两个字符串
if(fp == =NULL)
printf("打开失败");
else
printf("打开成功");
2.1路径
- 绝对路径:指目录下的绝对位置,例如:c:/website/index.txt;
- 相对路径:指由这个文件(main.c)所在的路径引起的跟其它文件(或文件夹)的路径关系。
2.2打开方式
- “r”😗:只读,文件必须存在;
- “r+”😗:读写,文件必须存在;
- “w”😗:只写,文件不存在创建一个新文件,如果存在则删除原文件再创建新文件;
- “w+”😗:读写,文件不存在创建一个新文件,,如果存在则删除原文件再创建新文件;
- “a”😗:追加(写),文件存在时在文件末尾开始写,文件不存在则创建一个新文件;
- “a+”😗:追加(读写),文件存在时在文件末尾开始写,文件不存在则创建一个新文件;
注:打开成功返回FILE类型指针,打开失败返回NULL。
3.读文件
读一个字符:
char c = 0;
c = fgetc(fp);//从文件中读出第一个字符赋值给c
c = fgetc(fp);//读第二个字符
读一串字符:
while(!feof(fp))//通过feof()函数判断是否到达文件末尾,读到文件结束EOF标志,返回0
{
c = fgetc(fp);
printf("%c",c);
}
fread(存储读出数据的地址,数据的块的大小,块的个数,存储数据文件的指针);
4.写文件
写单个字符:
fputc('a',fp);//把a写入文件
fwrite(存储待写入数据的地址,数据的块的大小,块的个数,存储数据文件的指针);
5.文件定位函数
fseek(fp,偏移量,偏移方式);
- SEEK_SET:从文件开头偏移,偏移量必须大于等于零;
- SEEK_CUT:从当前位置偏移;
- SEEK_END:从文件末尾偏移。
6.关闭文件
fclose(fp);