fseek

FSEEK(3)                   Manuel du programmeur Linux                  FSEEK(3)



NOM
       fgetpos, fseek, fsetpos, ftell, rewind - Positionner un flux

SYNOPSIS
       #include <stdio.h>

       int fseek(FILE *stream, long offset, int whence);

       long ftell(FILE *stream);

       void rewind(FILE *stream);

       int fgetpos(FILE *stream, fpos_t *pos);

       int fsetpos(FILE *stream, const fpos_t *pos);

DESCRIPTION
       La fonction fseek() définit l'indicateur de position du flux pointé par
       stream. La nouvelle position, mesurée en octets, est obtenue en
       additionnant offset octets au point de départ indiqué par whence. Si
       whence vaut SEEK_SET, SEEK_CUR, ou SEEK_END, le point de départ
       correspond respectivement au début du fichier, à la position actuelle, ou
       à la fin du fichier. Un appel réussi à fseek() efface l'indicateur de fin
       de fichier du flux, et annule les effets de toute fonction ungetc(3) sur
       le même flux.

       La fonction ftell() obtient la valeur de l'indicateur de position du flux
       pointé par stream.

       La fonction rewind() place l'indicateur de position du flux pointé par
       stream au début du fichier. C'est l'équivalent de :

              (void) fseek(stream, 0L, SEEK_SET)

       sauf que l'indicateur d'erreur du flux est également effacé (consultez
       clearerr(3)).

       Les fonctions fgetpos() et fsetpos() sont des alternatives à ftell() et
       fseek() (avec whence à SEEK_SET), en définissant et en mémorisant la
       valeur de l'indicateur de position du fichier dans ou depuis l'objet
       référencé par pos. Sur certains systèmes non UNIX, l'objet fpos_t peut
       être un objet complexe, et ces routines peuvent être les seules méthodes
       possibles pour repositionner un flux de texte de manière portable.

VALEUR RENVOYÉE
       La fonction rewind() ne renvoie pas de valeur. Si elles réussissent
       totalement, fgetpos(), fseek(), fsetpos() renvoient 0, et ftell() renvoie
       la position actuelle. Sinon, elles renvoient -1 et la variable globale
       errno contient le code d'erreur.

ERREURS
       EINVAL L'argument whence de fseek() n'était ni SEEK_SET, ni SEEK_END, ni
              SEEK_CUR. Autrement, le décalage du fichier aurait été négatif.

       ESPIPE The file descriptor underlying stream is not seekable (e.g., it
              refers to a pipe, FIFO, or socket).

       Les fonctions fgetpos(), fseek(), fsetpos(), et ftell() peuvent
       également, en cas d'échec, définir errno sur n'importe quelle erreur
       indiquée par les routines fflush(3), fstat(2), lseek(2) et malloc(3).

ATTRIBUTS
       Pour une explication des termes utilisés dans cette section, consulter
       attributes(7).

       ┌────────────────────────────┬──────────────────────┬─────────┐
       │Interface                   Attribut             Valeur  │
       ├────────────────────────────┼──────────────────────┼─────────┤
       │fseek(), ftell(), rewind(), │ Sécurité des threads │ MT-Safe │
       │fgetpos(), fsetpos()        │                      │         │
       └────────────────────────────┴──────────────────────┴─────────┘

CONFORMITÉ
       POSIX.1-2001, POSIX.1-2008, C89, C99.

VOIR AUSSI
       lseek(2), fseeko(3)

COLOPHON
       Cette page fait partie de la publication 5.10 du projet man-pages Linux.
       Une description du projet et des instructions pour signaler des anomalies
       et la dernière version de cette page peuvent être trouvées à l'adresse
       https://www.kernel.org/doc/man-pages/.


TRADUCTION
       La traduction française de cette page de manuel a été créée par
       Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin
       <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>,
       François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe
       Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-
       luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas
       Huriaux <thomas.huriaux@gmail.com>, Nicolas François
       <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>,
       Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier
       <barbier@debian.org>, David Prévot <david@tilapin.org> et Frédéric
       Hantrais <fhantrais@gmail.com>

       Cette traduction est une documentation libre ; veuillez vous reporter à
       la GNU General Public License version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ concernant les conditions de
       copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,
       veuillez envoyer un message à debian-l10n-french@lists.debian.org ⟨⟩.




GNU                               30 avril 2018                         FSEEK(3)