fgetpos

obtiene el indicador de la archivo-posición de una secuencia.

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

Parámetros

  • stream
    Secuencia de destino.

  • pos
    almacenamiento de Posición-indicador.

Valor devuelto

Si es correcto, fgetpos devuelve 0.En el error, devuelve un valor distinto de cero y establece errno a una de las constantes de manifiesto siguientes (definido en STDIO.H): EBADF, lo que significa que la secuencia especificada no es un puntero de archivo válido o no es accesible, o EINVAL, que significa que el valor de stream o el valor de pos es válida, por ejemplo si alguno es puntero NULL.Si stream o pos es un puntero de NULL , la función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.

Comentarios

La función de fgetpos obtiene el valor actual del indicador de la archivo-posición de argumento de stream y lo almacena en el objeto indicada por pos.La función de fsetpos puede utilizar después la información almacenada en pos para restaurar el puntero de argumento de stream a su posición cuando fgetpos se llamó.El valor de pos se almacena en un formato interno y se ha diseñado para su uso con por fgetpos y fsetpos.

Requisitos

Función

Encabezado necesario

fgetpos

<stdio.h>

Para obtener información adicional de compatibilidad, vea compatibilidad en la Introducción.

Ejemplo

// crt_fgetpos.c
// This program uses fgetpos and fsetpos to
// return to a location in a file.

#include <stdio.h>

int main( void )
{
   FILE   *stream;
   fpos_t pos;
   char   buffer[20];

   if( fopen_s( &stream, "crt_fgetpos.txt", "rb" ) ) {
      perror( "Trouble opening file" );
      return -1;
   }

   // Read some data and then save the position. 
   fread( buffer, sizeof( char ), 8, stream );
   if( fgetpos( stream, &pos ) != 0 ) {
      perror( "fgetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fgetpos: %.13s\n", buffer );

   // Restore to old position and read data 
   if( fsetpos( stream, &pos ) != 0 ) {
      perror( "fsetpos error" );
      return -1;
   }

   fread( buffer, sizeof( char ), 13, stream );
   printf( "after fsetpos: %.13s\n", buffer );
   fclose( stream );
}

entrada: crt_fgetpos.txt

fgetpos gets a stream's file-position indicator.

70hdhh4t.collapse_all(es-es,VS.110).gifsalida crt_fgetpos.txt

after fgetpos: gets a stream
after fsetpos: gets a stream

Equivalente en .NET Framework

System:: IO:: secuencia de archivo:: Posición

Vea también

Referencia

E/S de la secuencia

fsetpos