如何重置文件指针啊?

2025-03-07 09:09:58
推荐回答(3个)
回答1:

fseek可以,另外rewind
rewind
函数名: rewind
功 能: 将文件内部的位置指针重新指向一个流(数据流/文件)的开头
注意:不是文件指针而是文件内部的位置指针,随着对文件的读写文件的位置指针(指向当前读写字节)向后移动。而文件指针是指向整个文件,如果不重新赋值文件指针不会改变。

回答2:

c语言中可以用fseek来定位文件指针的位置
fseek(fp,offset,SEEK_SET);
fseek(fp,offset,SEEK_CUR);
fseek(fp,offset,SEEK_END);

fp为打开的文件指针,offset为相对偏移

SEEK_SET表示从文件起始位置开始计算
SEEK_CUR表示当前位置开始计算
SEEK_END表示从文件尾部开始计算

例如:
定位到20字节的位置 fseek(fp,20,SEEK_SET)

定位当前位置后的20字节 fseek(fp,20,SEEK_CUR)

定位到倒数第十个字节 fseek(fp,-10,SEEK_END)

要在文件内进行来回跳跃性的处理,可以用多个变量记住
多个位置

回答3:

重置指针就2函数 fseek和rewind fseek可以实现任意定位, rewind是回到文件开头
看你的路径大概不是windows系统,没办法用SetFilePointer了
你写数据的时候helloworld自然会覆盖的 放心