fgetpos
Načítá datový proud indikátor umístění souboru.
int fgetpos(
FILE *stream,
fpos_t *pos
);
Parametry
stream
Cílový datový proud.pos
Indikátor pozice úložiště.
Vrácená hodnota
Pokud je úspěšná, fgetpos vrátí hodnotu 0.Při selhání, vrátí nenulovou hodnotu a nastaví errno na jednu z následujících manifestu (definovanou v STDIO.H): EBADF, což znamená Zadaný datový proud není platný soubor ukazatel nebo není přístupný, nebo EINVAL, což znamená stream hodnotu nebo hodnotu pos je neplatný, jako například buď je nulový ukazatel.Pokud stream nebo pos je NULL ukazatele, funkce vyvolá obsluhu neplatný parametr popsaným v Ověření parametrů.
Poznámky
fgetpos Funkce načte aktuální hodnotu stream ukazatel polohy souboru a ukládá je v objektu odkazuje argumentu pos.fsetpos Funkce později pomocí informací uložených v pos obnovit stream argumentu ukazatel do polohy v době fgetpos byla volána.pos Hodnota je uložena v interní formát a je určena pouze pro fgetpos a fsetpos.
Požadavky
Function |
Požadované záhlaví |
---|---|
fgetpos |
<stdio.h> |
Další informace o kompatibilitě, viz Compatibility v úvodu.
Příklad
// 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 );
}
Vstup: crt_fgetpos.txt
fgetpos gets a stream's file-position indicator.
Výstup crt_fgetpos.txt
after fgetpos: gets a stream
after fsetpos: gets a stream
Ekvivalent v rozhraní .NET Framework
System::IO::FileStream::Position