Compartir a través de


CStdioFile::Seek

Coloca el puntero de un archivo abierto anteriormente.

virtual ULONGLONG Seek(
   LONGLONG lOff,
   UINT nFrom 
);

Parámetros

  • lOff
    Número de bytes para mover el puntero.

  • nFrom
    Modo desplazamiento de puntero. Debe ser uno de los siguientes valores:

    • CFile::begin: Mueva los bytes de lOff de ese puntero hacia delante desde el principio del archivo.

    • CFile::current: Mueva los bytes de lOff de ese puntero de la posición actual en el archivo.

    • CFile::end: Mueva los bytes de lOff del puntero de archivo del final del archivo. Observe que lOff debe ser negativo buscar en el archivo existente; los valores positivos buscarán del fin del archivo.

Valor devuelto

Si la posición solicitada es válida, Seek devuelve el nuevo desplazamiento de bytes desde el principio del archivo. Si no, el valor devuelto es indefinido y se produce un objeto de CFileException .

Comentarios

La función de Seek permite acceso aleatorio al contenido de un archivo mueve el puntero a la cantidad especificado, absoluta o relativa. No se leen ningún dato realmente durante la búsqueda. Si la posición solicitada es mayor que el tamaño del archivo, el archivo se mejorada a esa posición, y no se iniciará ninguna excepción.

Cuando se abre un archivo, el puntero de archivo se coloca en el desplazamiento 0, el principio del archivo.

Esta implementación de Seek se basa en la función fseekde la biblioteca en tiempo de ejecución (CRT). Existen varias limitaciones en el uso de Seek en secuencias abierto en modo de texto. Para obtener más información, vea fseek, _fseeki64.

Ejemplo

El ejemplo siguiente se muestra cómo utilizar Seek para mover el puntero de 1000 bytes desde el principio del archivo de cfile . Observe que Seek no lee datos, por lo que debe llamar posteriormente CStdioFile::ReadString para leer datos.

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

Requisitos

encabezado: afx.h

Vea también

Referencia

CStdioFile Class

Gráfico de jerarquías

CFileException (Clase)

CStdioFile::ReadString

CFile::Read