_utime, _utime32 _utime64, _wutime, _wutime32, _wutime64

Legen Sie die Datei Zeit der den Modus fest.

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 
);

Parameter

  • filename
    Zeiger auf eine Zeichenfolge, die den Pfad und den Dateinamen enthält.

  • times
    Zeiger auf gespeicherten Zeitwerten.

Rückgabewert

Jede dieser Funktionen gibt 0 zurück, wenn die FILE Änderung der Zeit geändert wurde.Ein Rückgabewert von 1 gibt einen Fehler an.Wenn ein ungültiger Parameter übergeben wird, wird der Ereignishandler aufgerufen, z. B. ungültige Parameter in Parametervalidierungbeschrieben.Wenn die Ausführung fortgesetzt werden kann, darf dieser Funktionen geben -1 zurück und errno wird auf einen der folgenden Werte festgelegt:

  • EACCES
    Pfad gibt Verzeichnis oder schreibgeschützte Datei an

  • EINVAL
    Ungültiges Argument times

  • EMFILE
    Zu viele geöffneten Dateien (die Datei geöffnet werden muss, um die Änderung zu Zeit ändern)

  • ENOENT
    Pfad- oder Dateiname nicht gefunden

Weitere Informationen finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr Weitere Informationen über diese und andere Rückgabecodes.

Das Datum kann für eine Datei geändert werden, wenn das Datum der Änderung, am 1. Januar 1970 nach Mitternacht ist, und vor dem Enddatum der verwendeten Funktion._utime und _wutime verwenden einen 64-Bit-Zeitwert, deshalb ist das Enddatum 23:59: 59 3000 am 31. Dezember, UTC.Wenn _USE_32BIT_TIME_T definiert wird, um das alte Verhalten zu erzwingen, ist das Enddatum 03:14: Am 7. Januar 19 2038, UTC._utime32 oder _wutime32 Verwendung eines 32-Bit-Zeit unabhängig davon, ob _USE_32BIT_TIME_T-Typ definiert und hat immer das vorherige Enddatum._utime64 oder _wutime64 Verwendung der 64-Bit-Zeit, sodass diese Features unterstützt immer das neuere Enddatum.

Hinweise

Die_utime Zeit der Funktion legt die Änderung für die Datei fest, die von filenameangegeben wird*.* Der Prozess muss über Schreibzugriff auf die Datei verfügen, um die Zeitspanne zu ändern.Unter Windows Betriebssystem, können Sie die Zugriffsgeschwindigkeit und die Zeit der Änderungen in der _utimbuf Struktur ändern.Wenn times ein NULL Zeiger ist, wird die Änderung auf die aktuelle Zeit der Ortszeit festgelegt.Andernfalls muss times auf eine Struktur vom Typ _utimbufveranschaulichen, definiert in SYS \ UTIME.H.

Die _utimbuf Struktur speichert den Dateizugriff und setzt die Änderung von _utime Änderung Zeit fest, um FILE Datumsangaben zu ändern.Die Struktur enthält die folgenden Felder, die sowohl vom Typ time_tsind:

  • actime
    Uhrzeit des Dateizugriffs

  • modtime
    Zeitpunkt der Änderung der Datei

Einige Versionen der _utimbuf Struktur (_utimebuf32 und __utimbuf64) werden mit der 32-Bit- und 64-Bit-Versionen Uhrzeit des Typs definiert.Diese werden in 32-Bit- und 64-Bit-Versionen von bestimmten dieser Funktion verwendet._utimbuf selbst verwendet standardmäßig einen Typ 64-Bit-Zeit, es sei denn, _USE_32BIT_TIME_T definiert ist.

_utime ist mit _futime identisch, mit der Ausnahme, dass das filename-Argument von _utime ist ein Dateiname oder Pfad zu einer Datei, anstatt Dateideskriptor einer geöffneten Datei.

_wutime ist eine Breitzeichen-Version von _utime. filename das Argument zu _wutime ist eine Zeichenfolge mit Breitzeichen.Diese Funktionen verhalten sich ansonsten unterscheiden.

Zuweisung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definieren

_UNICODE definiert

_tutime

_utime

_utime

_wutime

_tutime32

_utime32

_utime32

_wutime32

_tutime64

_utime64

_utime64

_wutime64

Anforderungen

Routine

Erforderliche Header

Optionale Header

_utime, _utime32, _utime64

<sys/utime.h>

<errno.h>

_utime64

<sys/utime.h>

<errno.h>

_wutime

<utime.h> oder <wchar.h>

<errno.h>

Um Kompatibilität zusätzlichen Informationen finden Sie unter Kompatibilität in der Einführung.

Beispiel

Dieses Programm verwendet _utime , um die FILE Änderung Zeit auf die aktuelle Zeit festgelegt wird.

// 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" );
}

Beispielausgabe

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-Entsprechung

Nicht zutreffend. Um die Standard-C-Funktion aufrufen, verwenden Sie PInvoke. Weitere Informationen finden Sie unter Plattformaufruf-Beispiele.

Siehe auch

Referenz

Zeit-Verwaltung

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 Funktionen

Zeit, _time32, _time64