FSEEK( ) (Función)

Mueve el puntero de archivo en un archivo abierto con una función de archivo de bajo nivel.

FSEEK(nFileHandle, nBytesMoved [, nRelativePosition])

Valores devueltos

Numeric

Parámetros

  • nFileHandle
    Especifica el controlador del archivo dentro del cual FSEEK( ) mueve el puntero de archivo. FCREATE( ) o FOPEN( ) devuelven un número de controlador de archivo en el momento de crear o abrir el archivo.
  • nBytesMoved
    Especifica el número de bytes en los que se desea mover el puntero de archivo. Si el valor de nBytesMoved es positivo, se mueve el puntero de archivo hacia el final del archivo. En cambio, si es negativo, se mueve el puntero de archivo hacia el principio del archivo.
  • nRelativePosition
    Mueve el puntero del archivo hasta una posición relativa del archivo. De forma predeterminada, el puntero de archivo se moverá respecto del principio del archivo. Puede mover de forma alternativa el puntero del archivo respecto del principio o el final del archivo al incluir nRelativePosition. La tabla siguiente muestra cada valor de nRelativePosition y cómo hace que se mueva el puntero.
    nRelativePosition Mueve el puntero de archivo con respecto a
    0 (Predeterminado) El principio del archivo.
    1 La posición actual del puntero de archivo.
    2 El final del archivo.

Observaciones

Después de mover el puntero de archivo, FSEEK( ) devuelve el número de bytes que dista el puntero de archivo del principio del archivo. El puntero de archivo puede moverse también con FREAD( ) y FWRITE( ).

Ejemplo

La siguiente función definida por el usuario utiliza FSEEK( ) para devolver el tamaño de un archivo. Si no pasa parámetros a FDU, devolverá –2. Si el archivo no puede encontrarse, FDU devolverá –1.

FUNCTION fsize2
PARAMETERS gcFileName  && File to be checked
PRIVATE pnHandle,pnSize
IF PARAMETERS( ) = 0
   RETURN -2  && Return -2 if no parameter passed
ELSE
   IF !FILE(gcFileName)
      RETURN -1  && Return -1 if file does not exist
   ENDIF
ENDIF
pnHandle = FOPEN(gcFileName)   && Open file
pnSize = FSEEK(pnHandle,0,2)   && Determine file size, assign to pnSize
=FCLOSE(pnHandle)  && Close file
RETURN pnSize  && Return value

Vea también

FCHSIZE( ) | FCLOSE( ) | FCREATE( ) | FEOF( ) | FFLUSH( ) | FGETS( ) | FOPEN( ) | FPUTS( ) | FREAD( ) | FWRITE( )