CStdioFile::Seek

從新定位在之前打開的文件的指針。 函數

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

將指針的字節數。 spa

nFrom

指針移到模式。 必須爲下列值之一: .net

  • CFile::begin:轉到文件指針 lOff 字節從最初文件。 指針

  • CFile::current:從文件中的當前位置移動文件指針 lOff 字節。 code

  • CFile::end:從文件的結尾移動文件指針 lOff 字節。 請注意 lOff 必須爲負到搜尋到現有文件;正值能夠經過文件結尾的查找。 對象

若是請求的位置是非法的,Seek 返回新的字節偏移量最初文件。 不然,返回值是未定義的,並 CFileException 對象將引起。 ci

Seek 功能經過將指針容許訪問文件的目錄隨機訪問每一個指定的量,絕對或相對。 在查找過程當中,數據實際上並無讀取。 若是請求的位置大於文件的大小,文件長度將擴展到該位置,而且不會引起任何異常。 get

在打開文件時,文件指針置於偏移量0,文件的開頭。 it

Seek 的此實現基於運行庫(crt)函數 fseek。 在 Seek 用法的多個限制在文本模式下打開的流的。 有關更多信息,請參見 fseek, _fseeki64 io

下面的示例演示如何使用 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

本站公眾號
   歡迎關注本站公眾號,獲取更多信息