14.2.19文件定位

有三种函数可用于设置和确定给定文件的文件指针位置。

 
: pos = ftell (fid)

返回文件指针的位置,作为文件描述符指定的文件开始时的字符数fid.

详见: fseek, frewind, feof, fopen.

广告
 
: status = fseek (fid, offset)
: status = fseek (fid, offset, origin)

将文件指针设置到该位置offset在文件中fid.

指针已定位offset的个字符origin,可能是预定义的变量之一SEEK_SET 开始SEEK_CUR (当前位置),或SEEK_END (文件结尾)或字符串"bof", "cof""eof"如果origin省略,SEEK_SET 假设。offset可以是正、负或零,但不是所有的组合originoffset可以实现。

fseek成功时返回0,出错时返回-1。

详见: fskipl, frewind, ftell, fopen, SEEK_SET, SEEK_CUR, SEEK_END.

广告
 
: fseek_origin = SEEK_SET ()

返回要传递到的数值fseek将文件指针相对于文件的开头进行定位。

详见: SEEK_CUR, SEEK_END, fseek.

广告
 
: fseek_origin = SEEK_CUR ()

返回要传递到的数值fseek以相对于当前位置定位文件指针。

详见: SEEK_SET, SEEK_END, fseek.

广告
 
: fseek_origin = SEEK_END ()

返回要传递到的数值fseek将文件指针相对于文件末尾进行定位。

详见: SEEK_SET, SEEK_CUR, fseek.

广告
 
: frewind (fid)
: status = frewind (fid)

将文件指针移动到文件描述符指定的文件的开头fid.

如果输出status则被指定frewind如果成功,则返回0;如果遇到错误,则返回-1。

编程说明:frewind相当于fseek (fid, 0, SEEK_SET).

详见: fseek, ftell, fopen.

广告

以下示例将当前文件位置存储在变量中marker,将指针移动到文件的开头,读取四个字符,然后返回到原始位置。

marker = ftell (myfile);
frewind (myfile);
fourch = fgets (myfile, 4);
fseek (myfile, marker, SEEK_SET);

版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2