rewind(fp):将文件光标置首
如果在文件光标位于结尾时从文件中读取数据,那么便会以乱码的形式往文件中写入读取数据大小,然后将乱码读出
解决方法1:关闭文件,重新打开,文件光标会置首
解决方法2:
代码语言:javascript复制#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void test01()
{
//要改成可读可写
FILE* fp = fopen("hello.txt", "w ");
if (!fp)
{
printf("文件打开失败");
return;
}
fputs("hello world", fp);
#if 0
//解决方法1:
fclose(fp);
fp = fopen("hello.txt", "r");
#endif
//将文件光标置首
//fseek(fp, 0, SEEK_SET);
//rewind(fp);
//fseek(fp, -11, SEEK_END);
fseek(fp, -5, SEEK_CUR);
char buf[32] = { 0 };
fgets(buf, sizeof(buf), fp);
printf("%sn", buf);
}
int main()
{
test01();
return 0;
}