Función de la biblioteca C -fseek()
Biblioteca estándar de C - <stdio.h>
Descripción
La función de la biblioteca Cint fseek(FILE *stream, long int offset, int whence)establece el flujostreamla posición del archivo al desplazamiento dadooffset, el parámetro offset significa elwhencenúmero de bytes a buscar desde la posición dada.
Declaración
A continuación se muestra la declaración de la función fseek().
int fseek(FILE *stream, long int offset, int whence)
Parámetros
- stream-- Este es un puntero al objeto FILE, el cual identifica el flujo.
- offset-- Este es el desplazamiento relativo a whence, en bytes.
- whence-- Esta es la posición que indica dónde comenzar a agregar el desplazamiento offset. Generalmente se especifica como una de las siguientes constantes:
| Constantes | Descripción |
|---|---|
| SEEK_SET | El principio del archivo |
| SEEK_CUR | La posición actual del puntero de archivo |
| SEEK_END | El final del archivo |
Valor de retorno
Si tiene éxito, la función devuelve cero; de lo contrario, devuelve un valor distinto de cero.
Ejemplo
El siguiente ejemplo demuestra el uso de la función fseek().
#include <stdio.h>
int main ()
{
FILE *fp;
fp = fopen("file.txt","w+");
fputs("This is example.com", fp);
fseek( fp, 7, SEEK_SET );
fputs(" C Programming Langauge", fp);
fclose(fp);
return(0);
}
Vamos a compilar y ejecutar el programa anterior, esto creará el archivofile.txt, su contenido es el siguiente. Inicialmente el programa crea el archivo y escribeThis is example.com, pero después restablecimos el puntero de escritura en la séptima posición y usamos la sentencia puts() para reescribir el archivo, con el siguiente contenido:
This is C Programming Langauge
Ahora vamos a usar el siguiente programa para ver el contenido del archivo anterior:
#include <stdio.h>
int main ()
{
FILE *fp;
int c;
fp = fopen("file.txt","r");
while(1)
{
c = fgetc(fp);
if( feof(fp) )
{
break ;
}
printf("%c", c);
}
fclose(fp);
return(0);
}
Otras extensiones