CStdioFile::Seek

重新定位在以前打开的文件的指针。

virtual ULONGLONG Seek(
   LONGLONG lOff,
   UINT nFrom 
);
参数
lOff

将指针的字节数。

nFrom

指针移到模式。 必须为下列值之一:

  • CFile::begin:转到文件指针 lOff 字节从最初文件。

  • CFile::current:从文件中的当前位置移动文件指针 lOff 字节。

  • CFile::end:从文件的结尾移动文件指针 lOff 字节。 请注意 lOff 必须为负到搜寻到现有文件;正值可以通过文件结尾的查找。

返回值

如果请求的位置是非法的,Seek 返回新的字节偏移量最初文件。 否则,返回值是未定义的,并 CFileException 对象将引发。

备注

Seek 功能通过将指针允许访问文件的目录随机访问每个指定的量,绝对或相对。 在查找过程中,数据实际上并没有读取。 如果请求的位置大于文件的大小,文件长度将扩展到该位置,并且不会引发任何异常。

在打开文件时,文件指针置于偏移量0,文件的开头。

Seek 的此实现基于运行库(crt)函数 fseek。 在 Seek 用法的多个限制在文本模式下打开的流的。 有关更多信息,请参见 fseek, _fseeki64

示例

下面的示例演示如何使用 Seek 移动指针1000个字节从最初 cfile 文件。 请注意 Seek 不读取数据,因此,必须对的后续调用 CStdioFile::ReadString 读取数据。

C++
CStdioFile cfile(_T("Stdio_Seek_File.dat"), CFile::modeWrite |
   CFile::modeCreate);
LONGLONG lOff = 1000;
ULONGLONG lActual = cfile.Seek(lOff, CFile::begin);
要求

Header: afx.h

你可能感兴趣的:(CStdioFile::Seek)