Aracılığıyla paylaş


_utime, _utime32 _utime64, _wutime, _wutime32, _wutime64

Dosya değişiklik tarihini ayarlayın.

int _utime(
   const char *filename,
   struct _utimbuf *times 
);
int _utime32(
   const char *filename,
   struct __utimbuf32 *times 
);
int _utime64(
   const char *filename,
   struct __utimbuf64 *times 
);
int _wutime(
   const wchar_t *filename,
   struct _utimbuf *times 
);
int _wutime32(
   const wchar_t *filename,
   struct __utimbuf32 *times 
);
int _wutime64(
   const wchar_t *filename,
   struct __utimbuf64 *times 
);

Parametreler

  • filename
    Yol veya dosya adı içeren bir dize işaretçisi.

  • times
    Saklı zaman değerleri için işaretçi.

Dönüş Değeri

Dosya değişiklik zamanı değiştirdiyseniz Bu işlevlerden her biri 0 değerini döndürür.–1 Dönüş değeri bir hata olduğunu gösterir.Geçersiz bir parametre verilmezse, geçersiz parametre işleyicisi, açıklandığı şekilde çağrılır Parametre Doğrulama.Yürütülmesine devam etmek için izin verilmişse, bu işlevler -1 geri dönün ve errno aşağıdaki değerlerden birine ayarlayın:

  • EACCES
    Dizin veya salt okunur dosya yolunu belirtir.

  • EINVAL
    Geçersiz times bağımsız değişkeni

  • EMFILE
    Çok fazla açık dosya (dosya, değiştirilme saati değiştirmek için açılması gereken)

  • ENOENT
    Yol veya dosya adı bulunamadı

Bkz: _doserrno, errno, _sys_errlist ve _sys_nerr bu ve diğer ilgili daha fazla bilgi için kodları dönün.

Değiştirme tarihi yarısından 1 Ocak 1970 ve kullanılan işlev, bitiş tarihinden önce ise, bir dosya için tarih değiştirilebilir._utimeve _wutime 23: 59: 59, 31 Aralık 3000 utc bitiş tarihi, bu nedenle bir 64-bit saat değerini kullanın._USE_32BIT_TIME_T Tanımlanan eski davranışı zorlamak için 03: 14: 07 19 Ocak 2038 utc bitiş tarihi olur._utime32veya _wutime32 kullanılıp bakılmaksızın bir 32-bit süre türünü kullanan _USE_32BIT_TIME_T tanımlanır ve her zaman daha önceki tarihe sahip._utime64veya _wutime64 bu işlevleri sonraki son tarih her zaman desteklemek için her zaman 64 bit saat türü kullanın.

Notlar

_utime İşlevi tarafından belirtilen dosyanın değiştirilme saati ayarlar filename*.* İşlem süresini değiştirmek için dosyaya yazma erişimi olmalıdır.Windows işletim sisteminde, erişim süresini ve değişiklik zamanı değiştirebilirsiniz _utimbuf yapısı.times Olan bir NULL işaretçisi, değiştirilme saati geçerli yerel saattir ayarlanır.Aksi halde, times türü bir yapıya göstermelidir _utimbuf, SYS\UTIME içinde tanımlı.H.

_utimbuf Tarafından kullanılan dosyanın erişim ve değişiklik zamanları depolarının yapısını _utime dosyanın değiştirilme tarihleri değiştirmek için.Yapı türü her ikisi de aşağıdaki alanları olan time_t:

  • actime
    Dosya erişim süresi

  • modtime
    Dosya değiştirilmesinden saati

Belirli sürümleri _utimbuf yapısı (_utimebuf32 ve __utimbuf64) zaman türü 32-bit ve 64-bit sürümleri kullanılarak tanımlanır.Bunlar, 32-bit ve 64-bit belirli sürümlerinde bu işlev kullanılır._utimbufsürece kendisini varsayılan 64-bit saat türü kullanır _USE_32BIT_TIME_T tanımlanır.

_utimeaynıdır _futime dışında filename bağımsız değişkeni _utime bir dosya adı veya yolu açık bir dosyayı, dosya tanımlayıcısı yerine bir dosya.

_wutimegeniş karakter sürümü _utime; filename bağımsız değişkeni _wutime bir geniş karakter dizesidir.Bu işlevler aynı şekilde aksi davranırlar.

Genel metin yordamı eşlemeleri

TCHAR.H yordamına girildi

_UNICODE & _mbcs tanımlı değil

Tanımlanan _mbcs

Tanımlanan _UNICODE

_tutime

_utime

_utime

_wutime

_tutime32

_utime32

_utime32

_wutime32

_tutime64

_utime64

_utime64

_wutime64

Gereksinimler

Yordamı

Gerekli üstbilgileri

İsteğe bağlı üstbilgileri

_utime, _utime32, _utime64

<sys/utime.h>

<errno.h>

_utime64

<sys/utime.h>

<errno.h>

_wutime

<utime.h> veya <wchar.h>

<errno.h>

Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

Bu programı kullanan _utime dosyanın değiştirilme saati geçerli saati ayarlamak için.

// crt_utime.c
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/utime.h>
#include <time.h>

int main( void )
{
   struct tm tma = {0}, tmm = {0};
   struct _utimbuf ut;

   // Fill out the accessed time structure
   tma.tm_hour = 12;
   tma.tm_isdst = 0;
   tma.tm_mday = 15;
   tma.tm_min = 0;
   tma.tm_mon = 0;
   tma.tm_sec = 0;
   tma.tm_year = 103;

   // Fill out the modified time structure
   tmm.tm_hour = 12;
   tmm.tm_isdst = 0;
   tmm.tm_mday = 15;
   tmm.tm_min = 0;
   tmm.tm_mon = 0;
   tmm.tm_sec = 0;
   tmm.tm_year = 102;

   // Convert tm to time_t
   ut.actime = mktime(&tma);
   ut.modtime = mktime(&tmm);

   // Show file time before and after
   system( "dir crt_utime.c" );
   if( _utime( "crt_utime.c", &ut ) == -1 )
      perror( "_utime failed\n" );
   else
      printf( "File time modified\n" );
   system( "dir crt_utime.c" );
}

Örnek Çıktı

Volume in drive C has no label.
 Volume Serial Number is 9CAC-DE74

 Directory of C:\test

01/09/2003  05:38 PM               935 crt_utime.c
               1 File(s)            935 bytes
               0 Dir(s)  20,742,955,008 bytes free
File time modified
 Volume in drive C has no label.
 Volume Serial Number is 9CAC-DE74

 Directory of C:\test

01/15/2002  12:00 PM               935 crt_utime.c
               1 File(s)            935 bytes
               0 Dir(s)  20,742,955,008 bytes free

.NET Framework Eşdeğeri

Yoktur. Standart c işlevi çağırmak için kullanmak PInvoke. Daha fazla bilgi için bkz: Platform Çağırma örnekleri.

Ayrıca bkz.

Başvuru

Zaman Yönetimi

asctime, _wasctime

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32

_ftime, _ftime32, _ftime64

_futime, _futime32, _futime64

gmtime, _gmtime32, _gmtime64

localtime, _localtime32, _localtime64

_stat, _wstat İşlevleri

time, _time32, _time64