Fonctions de la bibliothèque C -fseek()
Bibliothèque standard C - <stdio.h>
Description
Fonctions de la bibliothèque Cint fseek(FILE *stream, long int offset, int whence)Positionne le fluxstreamLa position du fichier se trouve au décalage donné.offset, le paramètre offset signifie à partir duwhence donnéLe nombre d'octets pour la recherche de position.
Déclaration
Voici la déclaration de la fonction fseek().
int fseek(FILE *stream, long int offset, int whence)
Paramètre
- stream-- Ceci est un pointeur vers l'objet FILE qui identifie le flux.
- offset-- Ceci est le décalage, en octets, relatif à whence.
- whence-- C'est la position indiquant d'où le décalage est ajouté. Elle est généralement spécifiée comme l'une des constantes suivantes :
| Constantes | Description |
|---|---|
| SEEK_SET | Début du fichier |
| SEEK_CUR | La position actuelle du pointeur de fichier. |
| SEEK_END | Fin du fichier |
Valeur de retour
Si elle réussit, cette fonction renvoie zéro ; sinon, elle renvoie une valeur non nulle.
Exemple
L'exemple suivant illustre l'utilisation de la fonction 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);
}
Compilons et exécutons le programme ci-dessus, qui créera un fichier.file.txt, son contenu est le suivant. Initialement, le programme crée le fichier et écritThis is example.com, mais ensuite nous avons réinitialisé le pointeur d'écriture à la septième position et utilisé l'instruction puts() pour réécrire le fichier, comme suit :
This is C Programming Langauge
Maintenant, utilisons le programme suivant pour afficher le contenu du fichier ci-dessus :
#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);
}
autres extensions