_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şkeniEMFILE
Ç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üresimodtime
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
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
_fstat, _fstat32, _fstat64, _fstati64, _fstat32i64, _fstat64i32