Árvore de páginas

Sintaxis

 

FSEEK( <expresión numérica 1>,  <expresión numérica 2>  [ , <expresión numérica 3> ] )

 

 

Propósito

 

Mueve el puntero del archivo binario a una nueva posición.

 

 

Argumentos

 

< expresión numérica 1 >

 

Define el número de manejo que identifica el archivo binario que se procesará. Este número se obtiene por las funciones FOPEN() o FCREATE().

 

< expresión numérica 2 >

 

Define el número de bytes en el cual el puntero de archivos debe desplazarse, a partir de la posición actual definida por la expresión numérica 3. Este número podrá ser positivo o negativo, dependiendo de la dirección en la cual el puntero debe moverse (hacia adelante o hacia atrás).

 

< expresión numérica 3 >

 

Define el origen del desplazamiento del puntero de archivos, antes de que se inicie la ejecución de la función FSEEK(). Se indica mediante uno de los valores listados en la siguiente tabla. El origen estándar asumido por el AdvPL es cero. Es decir, el inicio del archivo.

 

Origen

Fileio.ch

Descripción

0

FS_SET

A partir del inicio del archivo.

1

FS_RELATIVE

A partir de la posición actual del puntero.

2

FS_END

A partir del final del archivo.

 

 

Utilización

 

Todo archivo binario tiene un puntero vinculado. Este puntero se ubica en cada uno de sus bytes a medida que se efectúan las operaciones de apertura ( FOPEN() ), lectura ( FREAD() y FREADSTR() ), grabación ( FWRITE() ) o posición ( FSEEK() ) sobre estos.

 

 

Sugerencias

 

El puntero no puede  desplazarse más allá del inicio o del final del archivo. Por lo tanto, si el origen del desplazamiento es el final del archivo, definido por la expresión numérica 2 igual a 2, la expresión numérica 1 debe resultar necesariamente en un número negativo o cero.

 

 

Ejemplos

 

LOCAL cArq := FOPEN(“Prueba.txt”)              // Abre el archivo.

LOCAL nTamanho := FSEEK(cArq, 0, 2)     // Determina el tamaño del archivo.

 

FSEEK(cArq, 0, 1)     // Suministra la posición actual del puntero.

FSEEK(cArq, 0, 0)     // Retorna a la posición inicial del puntero.

  • Sem rótulos