【文件的读写操作】
//文件的读写操作
//所有的 “读 ”操作打开文件的方式都是 “r ”
//以读操作打开文件失败时会报错
//所有的 “写 ”操作打开文件的方式都是 “w ”
//以写操作打开文件失败时会重新建立一个文件
/*
注意:pf指的是一个文件指针,指向的是以读或者写模式打开一个文件时返回的文件地址
针对单个字符的读写操作:
1.fputc('a',pf):将字符'a'写到pf所指向的文件中去
2.fgetc(pf) :congpf所指向的文件中依次读取单个字符
针对字符串的读写操作:
1.fputs("abcdef",pf):将"abcdef"写到pf所指向的文件中
2.fgets(arr,n,pf :将pf所指向的文件中的内容依次写单个字符到arr数组中,并且最多写n-1个字符 + 一个 '\0' ,n为arr数组的大小即arr数组的元素个数
针对格式化的读写操作:
1.fprintf(pf,“%d %s %f”,n1,arr,n2):将固定格式的内容写到pf所指向的文件中
fprintf 和 printf的区别就是多了一个文件指针pf
printf是将固定格式的内容写到屏幕上也就是标准输出(stdout)
fprintf是将固定格式的内容写到pf所指向的文件中
2.fscanf(pf,“%d %s %f”,&n1,arr,&n2):从pf所指向的文件中读出固定格式的内容
fscanf和scanf的区别就是多了一个文件指针pf
scanf是从键盘上读取固定格式的数据
fscanf是从pf所指向的文件中读取固定格式的数据
随机读取:
fseek(pf,偏移量(n),文件指针光标的起始位置):读pf所指向的文件中,根据光标的起始位置 + n 位置处的字符
seek_SET:文件指针光标的起始位置为pf所指向的文件内容的起始位置
seek_CUR:文件指针光标的起始位置为pf所指向的文件内容的当前位置
seek_END:文件指针光标的起始位置为pf所指向的文件内容的末尾位置
指针光标偏移量计算:
ftell(pf):计算光标的当前位置距离pf所指向的文件内容的起始位置的偏移量,返回值为 int
光标重置:(让指针光标回到起始位置)
rewind(pf):使文件指针光标回到pf所指向的文件内容的起始位置