FSETPOS |
Fixe la position dans le fichier |
---|---|
Langage C++ | cstdio (stdio.h) |
Syntaxe
int fsetpos(FILE *ptrfichier,const fpos_t *pos); |
Paramètres
Nom | Description |
---|---|
ptrfichier | Ce paramètre permet d'indiquer l'identificateur du fichier |
pos | Ce paramètre permet d'indiquer la position du pointeur dans le fichier |
Description
Cette fonction permet de fixer la position du pointeur de fichier.
Remarques
- La fonction fsetpos() déplace l'indicateur de position du fichier au point spécifié par l'objet pointé par position. Cette valeur doit avoir été préalablement obtenue via un appel à fgetpos(). Une fois la fonction fsetpos() exécuté, l'indicateur de fin de fichier est réinitialisé. De plus, tout appel précédent à ungetc() est annulé.
- Si la fonction fsetpos() échoue, elle retourne une valeur différente de zéro. Si elle réussit, elle renvoie zéro.
Exemple
Prenons pour acquis que le fichier «readtext.txt» est le contenu :
Ceci est un exemple de fsetpos sur le site de Gladir.comVoici un exemple montrant une utilisation plus classique de cette fonction :
Essayer maintenant !
- #include <iostream>
- #include <cstdio>
- #include <cstdlib>
-
- int main()
- {
- FILE * Handle = fopen("readtext.txt", "r");
- if(Handle != NULL) {
- char Temp[4];
- int I;
- Temp[3] = 0;
- for(I = 0; I <= 3; I++) {
- fpos_t P;
- P.__pos = I * 8;
- fsetpos(Handle,&P);
- fread(&Temp,3,1,Handle);
- std::cout << I << ":" << Temp << std::endl;
- }
- fclose(Handle);
- }
- return 0;
- }
on obtiendra le résultat suivant :
0:Cec1: un
2:ple
3:set
Voir également
Langage de programmation - C++ - Référence de procédures et fonctions - fgetpos
Langage de programmation - C++ - Référence de procédures et fonctions - fseek
Langage de programmation - C++ - Référence de procédures et fonctions - ftell
Langage de programmation - C - Référence de procédures et fonctions - fsetpos
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 732.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 115.