_futime, _futime32, _futime64
définit l'heure de modification sur un fichier ouvert.
int _futime(
int fd,
struct _utimbuf *filetime
);
int _futime32(
int fd,
struct __utimbuf32 *filetime
);
int _futime64(
int fd,
struct __utimbuf64 *filetime
);
Paramètres
fd
descripteur de fichier au fichier ouvert.filetime
Pointeur vers la structure contenant la nouvelle date de modification.
Valeur de retour
Retour 0 si l'opération a réussi.si une erreur se produit, le gestionnaire de paramètre non valide est appelé, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, la fonction retourne la valeur - 1 et errno est défini à EBADF, indiquant un descripteur de fichier valide, ou à EINVAL, indiquant un paramètre non valide.
Notes
La routine d' _futime définit la date de modification et le temps d'accès sur l'ouverture de fichier associé à fd*.* _futime identique à _utime, mais son argument est le descripteur d'un fichier ouvert, plutôt que le nom d'un fichier ou d'un chemin d'accès à un fichier.La structure d' _utimbuf contient des champs pour la nouvelle date et heure d'accès de modification.les deux champs doivent contenir des valeurs valides._utimbuf32 et _utimbuf64 sont identiques à _utimbuf à l'exception de l'utilisation de 32 bits et des types d'heure 64 bits, respectivement._futime et _utimbuf utilisent un type d'heure 64 bits et _futime est identique dans le comportement à _futime64.Si vous devez forcer l'ancien comportement, définissez _USE_32BIT_TIME_T.Cela rend _futime identique dans le comportement à _futime32 et entraîne l'utilisation par la structure d' _utimbuf le type d'heure 32 bits, ce équivalente à __utimbuf32.
_futime64, qui utilise la structure d' __utimbuf64 , peut lire et modifier les dates de fichier via le 23h59 : 59, le 31 décembre, 3000, l'heure UTC ; alors qu'un appel à _futime32 échoue si la date sur le fichier est postérieure à celle du 19h14 : Le 7 janvier 18, 2038, l'heure UTC.Minuit, le 1er janvier 1970, correspond à la limite inférieure de la plage de dates pour ces fonctions.
Configuration requise
Fonction |
en-tête requis |
en-tête facultatif |
---|---|---|
_futime |
<sys/utime.h> |
<errno.h> |
_futime32 |
<sys/utime.h> |
<errno.h> |
_futime64 |
<sys/utime.h> |
<errno.h> |
Pour plus d'informations de compatibilité, consultez compatibilité dans l'introduction.
Exemple
// 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" );
}
entrée : crt_futime.c_input
Arbitrary file contents.
Résultat de l'exemple
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