basic_filebuf::seekpos

尝试修改控制流的当前位置。

virtual pos_type seekpos(
   pos_type _Sp,
   ios_base::openmode _Which = ios_base::in | ios_base::out
);

参数

  • _Sp
    对于查找的位置。

  • _Which
    用于指针位置指定模式。默认值为允许您修改读取和写入位置。

返回值

如果文件指针 fp 是null指针,则函数将失败。否则,它竭力通过调用 fsetpos修改流位置(fp&fposn),其中 fposn 是在 pos存储的 fpos_t 对象。如果该函数成功,则该函数返回 pos。否则,它返回一个无效流位置。若要确定流位置是否无效,则返回值与 pos_type(off_type(-1))比较。

备注

受保护的虚成员函数竭力修改控制流的当前位置。为选件类 basic_filebuf<Elem对象,Tr>,流位置可以由类型表示 fpos_t对象,存储偏移量和所有状态信息需要分析宽流。偏移量零指定流的第一个元素。(类型 pos_type 对象存储至少一 fpos_t 对象。)

对于用于读取和写入打开的文件,输入和输出流一前一后确定。在插入和提取之间切换,必须调用 pubseekoffpubseekpos。调用 pubseekoff (对 seekoff)具有文本流、二进制流和宽流的各种限制。

为宽流,因此,如果任何插入发生,且在打开了流,或者,因为最后一次调用 streampos,函数调用 溢出。它还包含所有订单需要还原初始转换状态中插入,使用文件转换方面 fac 调用 fac.unshift 根据需要。类型 char 的每个元素而生成的 byte 将文件指针指定的关联流中写入 fp,就象由连续调用该窗体 fputc(bytefp)。如果对 fac.unshift 或任何编写的调用失败,该函数不成功。

要求

标头: <fstream>

命名空间: std

请参见

参考

basic_filebuf Class

iostream编程

(mfc)约定