Compartilhar via


_utime, _utime32 _utime64, _wutime, _wutime32, _wutime64

conjunto a time de modificação do arquivo.

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

Parâmetros

  • filename
    Ponteiro para uma seqüência de caracteres que contém o caminho ou nome de arquivo.

  • times
    Ponteiro para valores de time armazenados.

Valor de retorno

Cada uma dessas funções retornará 0 se o time de modificação do arquivo foi alterado.Um valor retornado de – 1 indica um erro.Se um parâmetro inválido for passado, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, essas funções retornam -1 e errno é conjunto a um dos seguintes valores:

  • EACCES
    Caminho Especifica o diretório ou arquivo somente leitura

  • EINVAL
    De inválidotimes argumento

  • EMFILE
    Muitos arquivos abertos (o arquivo deve ser em aberto para alterar sua time de modificação)

  • ENOENT
    Caminho ou nome de arquivo não encontrado

See _doserrno, errno, _sys_errlist e _sys_nerr para obter mais informações sobre esses e outros códigos retorno.

A data pode ser alterada para um arquivo se a data de alterar é após a meia-noite, 1 º de janeiro de 1970 e antes do participante data da função usada.In Visual C++ 2005, _utime e _wutime Agora use um valor temporal de 64 bit, portanto, o participante data é 23: 59: 59, 31 de dezembro de 3000, UTC. If _USE_32BIT_TIME_T é definido para forçar o comportamento antigo, o participante data for 14: 03: 07 19 de janeiro de 2038, UTC. _utime32 ou _wutime32 usar um tipo de time de 32 bit independentemente se _USE_32BIT_TIME_T é definido e sempre ter quanto mais cedo participante Data. _utime64 ou _wutime64 sempre use o tipo de time de 64 bit, então essas funções sempre oferece suporte a data de término posterior.

Comentários

The _utime função define a time da modificação do arquivo especificado por filename*.* O processo deve ter acesso de gravar para o arquivo para alterar a time.No sistema operacional Windows, você pode alterar o time de acesso e a time de modificação no _utimbuf estrutura. If times é um NULL ponteiro, a time de modificação é definida como a time local corrente. Caso contrário, times deve apontar para uma estrutura de tipo _utimbuf, definido no SYS\UTIME.H.

The _utimbuf estrutura armazena horas de acesso e modificação de arquivo usadas pelo _utime Para alterar as datas de modificação do arquivo. A estrutura tem os seguintes campos são do tipo time_t:

  • actime
    time de acesso a arquivos

  • modtime
    time da modificação do arquivo

In Visual C++ 2005, versões específicas da _utimbuf () estrutura_utimebuf32 e __utimbuf64) são definidos usando as versões de 32 bit e 64 bit do tipo time. Eles são usados nas versões específicas 32 bit e 64 bit dessa função._utimbuf si mesmo por padrão usa um tipo de time de 64 bit, a menos que _USE_32BIT_TIME_T está definido.

_utime é idêntico ao _futime exceto pelo fato de que o filename argumento de _utime é um nome de arquivo ou um caminho para um arquivo em vez de um descritor de arquivo de um arquivo em aberto.

_wutime é uma versão de caractere largo da _utime; o filename argumento para _wutime é uma seqüência de caracteres largos. Essas funções se comportam exatamente caso contrário.

Mapeamentos de rotina de texto genérica

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_tutime

_utime

_utime

_wutime

_tutime32

_utime32

_utime32

_wutime32

_tutime64

_utime64

_utime64

_wutime64

Requisitos

Rotina

Cabeçalhos necessários

Cabeçalhos opcionais

_utime, _utime32, _utime64

<sys/utime.h>

<errno.h>

_utime64

<sys/utime.h>

<errno.h>

_wutime

<utime.h> ou <wchar.h>

<errno.h>

Para obter informações adicionais compatibilidade, consulte Compatibilidade na introdução.

Exemplo

Esse programa usa _utime Para conjunto a time de modificação do arquivo para a time corrente.

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

Saída de exemplo

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

Equivalente do NET Framework

Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Referência

Gerenciamento de time

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 funções

time, _time32, _time64