_futime
, _futime32
, _futime64
Açık bir dosyada değişiklik süresini ayarlar.
Sözdizimi
int _futime(
int fd,
struct _utimbuf *filetime
);
int _futime32(
int fd,
struct __utimbuf32 *filetime
);
int _futime64(
int fd,
struct __utimbuf64 *filetime
);
Parametreler
fd
Açık dosyanın dosya tanımlayıcısı.
filetime
Yeni değişiklik tarihini içeren yapıya yönelik işaretçi.
Dönüş değeri
Başarılı olursa 0 döndürür. Hata oluşursa, Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, işlev -1 döndürür ve errno
geçersiz bir dosya tanımlayıcısını veya EINVAL
geçersiz bir parametreyi belirten olarak ayarlanırEBADF
.
Açıklamalar
yordamı, _futime
ile fd
ilişkilendirilmiş açık dosyada değişiklik tarihini ve erişim saatini ayarlar. _futime
ile aynıdır _utime
, ancak bağımsız değişkeni bir dosyanın adı veya dosyanın yolu yerine açık bir dosyanın dosya tanımlayıcısı olur. Yapı, _utimbuf
yeni değişiklik tarihi ve erişim saati için alanlar içerir. Her iki alan da geçerli değerler içermelidir. _utimbuf32
ve _utimbuf64
sırasıyla 32 bit ve 64 bit zaman türlerinin kullanımı dışında aynıdır _utimbuf
. _futime
ve _utimbuf
64 bit zaman türü kullanın ve _futime
ile aynı davranıştadır _futime64
. Eski davranışı zorlamanız gerekiyorsa tanımlayın _USE_32BIT_TIME_T
. Bunu yapmak, ile aynı davranışa _futime32
neden _futime
olur ve yapının 32 bit zaman türünü kullanmasına neden olur _utimbuf
ve bunu ile __utimbuf32
eşdeğer hale getirir.
_futime64
yapısını kullanan __utimbuf64
, 23:59:59, 31 Aralık 3000, UTC ile dosya tarihlerini okuyabilir ve değiştirebilir; ancak dosyadaki tarih 18 Ocak 2038 UTC'den sonraysa bir çağrı _futime32
başarısız olur. 1 Ocak 1970 gece yarısı, bu işlevler için tarih aralığının alt sınırıdır.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
İşlev | Gerekli başlık | İsteğe bağlı üst bilgi |
---|---|---|
_futime |
<sys/utime.h> | <errno.h> |
_futime32 |
<sys/utime.h> | <errno.h> |
_futime64 |
<sys/utime.h> | <errno.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// 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" );
}
Giriş: crt_futime.c_input
Arbitrary file contents.
Örnek çıktı
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