_futime, _futime32, _futime64
Ustawia czas modyfikacji na otwarty plik.
int _futime(
int fd,
struct _utimbuf *filetime
);
int _futime32(
int fd,
struct __utimbuf32 *filetime
);
int _futime64(
int fd,
struct __utimbuf64 *filetime
);
Parametry
fd
Deskryptor pliku do otwartego pliku.filetime
Wskaźnik do struktury, zawierające nową datę modyfikacji.
Wartość zwracana
Zwraca 0, jeśli kończy się pomyślnie.Jeśli wystąpi błąd, program obsługi nieprawidłowy parametr jest wywoływany, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może w dalszym ciągu, funkcja zwraca –1 i errno jest ustawiona na EBADF, wskazując deskryptora nieprawidłowy plik lub EINVAL, wskazując nieprawidłowy parametr.
Uwagi
_futime Procedura ustawia Data modyfikacji i czas dostępu na otwieranie pliku skojarzone z fd*.*_futime jest taka sama, jak _utime, z wyjątkiem, że jej argument jest deskryptor pliku otwartego pliku, a nie nazwę pliku lub ścieżkę do pliku. _utimbuf Struktura zawiera pola do nowej daty modyfikacji i czas dostępu.Oba te pola muszą zawierać prawidłowe wartości._utimbuf32i _utimbuf64 są identyczne z _utimbuf odpowiednio z wyjątkiem wykorzystania typów czasu 32-bitowych i 64-bitowych._futimei _utimbuf użyć typu czasu 64-bitowych i _futime jest taka sama w zachowanie do _futime64.Jeżeli konieczne jest wymuszenie stare zachowanie, należy zdefiniować _USE_32BIT_TIME_T.Powoduje to zaawansowana _futime być identyczne w zachowanie do _futime32 i powoduje, że _utimbuf strukturę, aby użyć typu czas 32-bitowe, umożliwiając równoważnych do __utimbuf32.
_futime64, który korzysta z __utimbuf64 struktury, można odczytywać i modyfikować pliku dat do 23: 59: 59, 31 grudnia, 3000, UTC; Dlatego wywołanie do _futime32 kończy się niepowodzeniem, jeśli data pliku jest późniejsza od 19: 14: 07 18 stycznia 2038, UTC.Północy, 1 stycznia 1970 r., jest dolną granicą zakres dat dla tych funkcji.
Wymagania
Funkcja |
Wymaganego nagłówka |
Opcjonalne nagłówka |
---|---|---|
_futime |
<sys/utime.h> |
<errno.h> |
_futime32 |
<sys/utime.h> |
<errno.h> |
_futime64 |
<sys/utime.h> |
<errno.h> |
Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.
Przykład
// 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" );
}
Dane wejściowe: crt_futime.c_input
Arbitrary file contents.
Przykładowe dane wyjściowe
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