Sdílet prostřednictvím


_futime, _futime32, _futime64

Nastaví čas změny v otevřeném souboru.

Syntaxe

int _futime(
   int fd,
   struct _utimbuf *filetime
);
int _futime32(
   int fd,
   struct __utimbuf32 *filetime
);
int _futime64(
   int fd,
   struct __utimbuf64 *filetime
);

Parametry

fd
Popisovač souboru k otevřenému souboru.

filetime
Ukazatel na strukturu obsahující nové datum změny.

Vrácená hodnota

Vrátí hodnotu 0, pokud je úspěšná. Pokud dojde k chybě, vyvolá se neplatná obslužná rutina parametru, jak je popsáno v ověření parametru. Pokud je spuštění povoleno pokračovat, funkce vrátí hodnotu -1 a errno je nastavena na EBADF, indikující neplatný popisovač souboru nebo EINVAL, označující neplatný parametr.

Poznámky

Rutina _futime nastaví datum změny a čas přístupu u otevřeného souboru přidruženého fdk . _futime je identický s _utimetím rozdílem, že jeho argument je popisovač souboru otevřeného souboru, nikoli název souboru nebo cesta k souboru. Struktura _utimbuf obsahuje pole pro nové datum změny a čas přístupu. Obě pole musí obsahovat platné hodnoty. _utimbuf32 a _utimbuf64 jsou identické s _utimbuf výjimkou použití 32bitových a 64bitových typů času. _futimea _utimbuf použijte 64bitový typ času a _futime je identický v chování ._futime64 Pokud potřebujete vynutit staré chování, definujte _USE_32BIT_TIME_T. Tím dojde _futime ke identickému _utimbuf chování _futime32 a způsobí, že struktura použije 32bitový typ času, takže bude ekvivalentní __utimbuf32.

_futime64, který používá __utimbuf64 strukturu, může číst a upravovat data souboru do 23:59:59, 31. prosince 3000 UTC; zatímco volání _futime32 , které selže, pokud je datum souboru pozdější než 23:59:59 18, 2038 UTC. Půlnoc, 1. ledna 1970, je dolní mez rozsahu dat pro tyto funkce.

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Požadavky

Function Požadovaný hlavičkový soubor Volitelné záhlaví
_futime <sys/utime.h> <errno.h>
_futime32 <sys/utime.h> <errno.h>
_futime64 <sys/utime.h> <errno.h>

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// crt_futime.c
// This program uses _futime to set the
// file-modification time to the current time.

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <io.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/utime.h>
#include <share.h>

int main( void )
{
   int hFile;

   // Show file time before and after.
   system( "dir crt_futime.c_input" );

   _sopen_s( &hFile, "crt_futime.c_input", _O_RDWR, _SH_DENYNO, 0 );

   if( _futime( hFile, NULL ) == -1 )
      perror( "_futime failed\n" );
   else
      printf( "File time modified\n" );

   _close (hFile);

   system( "dir crt_futime.c_input" );
}

Vstup: crt_futime.c_input

Arbitrary file contents.

Ukázkový výstup

Volume in drive Z has no label.
Volume Serial Number is 5C68-57C1

Directory of Z:\crt

03/25/2004  10:40 AM                24 crt_futime.c_input
               1 File(s)             24 bytes
               0 Dir(s)  24,268,476,416 bytes free
Volume in drive Z has no label.
Volume Serial Number is 5C68-57C1

Directory of Z:\crt

03/25/2004  10:41 AM                24 crt_futime.c_input
               1 File(s)             24 bytes
               0 Dir(s)  24,268,476,416 bytes free
File time modified

Viz také

Správa času