Compartilhar via


Classe CFileTime

Essa classe fornece métodos para gerenciar os valores de data e hora associados a um arquivo.

Sintaxe

class CFileTime :  public FILETIME

Membros

Construtores públicos

Nome Descrição
CFileTime::CFileTime O construtor .

Métodos públicos

Nome Descrição
CFileTime::GetCurrentTime Chame essa função estática para recuperar um objeto CFileTime que representa a data e a hora atuais do sistema.
CFileTime::GetTime Chame esse método para recuperar a hora do objeto CFileTime.
CFileTime::LocalToUTC Chame esse método para converter uma hora de arquivo local em uma hora de arquivo com base em UTC (Tempo Universal Coordenado).
CFileTime::SetTime Chame esse método para definir a data e a hora armazenadas pelo objeto CFileTime.
CFileTime::UTCToLocal Chame esse método para converter a hora com base em UTC (Tempo Universal Coordenado) para a hora de arquivo local.

Operadores públicos

Nome Descrição
CFileTime::operator - Esse operador é usado para realizar a subtração em um objetoCFileTime ou CFileTimeSpan.
CFileTime::operator != Esse operador compara dois objetos CFileTime para determinar a desigualdade.
CFileTime::operator + Esse operador é usado para executar a adição em um objeto CFileTimeSpan.
CFileTime::operator += Esse operador é usado para executar a adição em um objeto CFileTimeSpan e atribuir o resultado ao objeto atual.
CFileTime::operator < Esse operador compara dois objetos CFileTime para determinar o menor.
CFileTime::operator <= Esse operador compara dois objetos CFileTime para determinar a igualdade ou o menor.
CFileTime::operator = O operador de atribuição.
CFileTime::operator -= Esse operador é usado para executar a subtração em um objeto CFileTimeSpan e atribuir o resultado ao objeto atual.
CFileTime::operator == Esse operador compara dois objetos CFileTime quanto à igualdade.
CFileTime::operator > Esse operador compara dois objetos CFileTime para determinar o maior.
CFileTime::operator >= Esse operador compara dois objetos CFileTime para determinar a igualdade ou o maior.

Constantes públicas

Nome Descrição
CFileTime::Day Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um dia.
CFileTime::Hour Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem uma hora.
CFileTime::Millisecond Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um milissegundo.
CFileTime::Minute Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um minuto.
CFileTime::Second Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um segundo.
CFileTime::Week Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem uma semana.

Comentários

Essa classe fornece os métodos para gerenciar os valores de data e hora associados à criação, ao acesso e à modificação de arquivos. Os métodos e os dados dessa classe são frequentemente usados em conjunto com objetos CFileTimeSpan, que lidam com valores temporais relativos.

O valor de data e hora é armazenado como um valor de 64 bits representando o número de intervalos de 100 nanossegundos desde 1º de janeiro de 1601. Esse formato é o formato UTC (Tempo Universal Coordenado).

As seguintes variáveis de membro static const são fornecidas para simplificar os cálculos:

Variável de membro Número de intervalos de 100 nanossegundos
Milissegundos 10.000
Second Milissegundo * 1.000
Minuto Segundo * 60
Hora Minuto * 60
Dia Hora * 24
Semana Dia * 7

Observação

Nem todos os sistemas de arquivos podem registrar a criação e a hora do último acesso e nem todos os sistemas de arquivos os registram da mesma maneira. Por exemplo, no sistema de arquivos FAT do Windows NT, a hora de criação tem uma resolução de 10 milissegundos, a hora da gravação tem uma resolução de 2 segundos e a hora de acesso tem uma resolução de 1 dia (a data de acesso). No NTFS, a hora de acesso tem uma resolução de 1 hora. Além disso, o FAT grava as horas no disco na hora local, mas o NTFS grava as horas no disco em UTC. Para obter mais informações,consulte Horas de arquivo.

Hierarquia de herança

FILETIME
 └ CFileTime

Requisitos

Cabeçalho: atltime.h

CFileTime::CFileTime

O construtor .

CFileTime() throw();
CFileTime(const FILETIME& ft) throw();
CFileTime(ULONGLONG nTime) throw();

Parâmetros

ft
Uma estrutura FILETIME.

nTime
A data e hora expressas como um valor de 64 bits.

Comentários

O objeto CFileTime pode ser criado usando uma data e hora existentes de uma estrutura FILETIME ou expresso como um valor de 64 bits (nos formatos de hora local ou UTC (Tempo Universal Coordenado). O construtor padrão define o tempo como 0.

CFileTime::Day

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um dia.

static const ULONGLONG Day = Hour* 24;

Exemplo

Confira o exemplo de CFileTime::Millisecond.

CFileTime::GetCurrentTime

Chame essa função estática para recuperar um objeto CFileTime que representa a data e a hora atuais do sistema.

static CFileTime GetCurrentTime() throw();

Valor retornado

Retorna a data e a hora atuais do sistema no formato UTC (Tempo Universal Coordenado).

Exemplo

// Retrieve the current time
CFileTime myFT;
myFT = CFileTime::GetCurrentTime();

CFileTime::GetTime

Chame esse método para recuperar a hora do objeto CFileTime.

ULONGLONG GetTime() const throw();

Valor retornado

Retorna a data e a hora como um número de 64 bits que poderão estar em formato local ou UTC (Tempo Universal Coordenado).

CFileTime::Hour

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem uma hora.

static const ULONGLONG Hour = Minute* 60;

Exemplo

Confira o exemplo de CFileTime::Millisecond.

CFileTime::LocalToUTC

Chame esse método para converter uma hora de arquivo local em uma hora de arquivo com base em UTC (Tempo Universal Coordenado).

CFileTime LocalToUTC() const throw();

Valor retornado

Retorna um objeto CFileTime contendo a hora no formato UTC.

Exemplo

Confira o exemplo de CFileTime::UTCToLocal.

CFileTime::Millisecond

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um milissegundo.

static const ULONGLONG Millisecond = 10000;

Exemplo

// Calculate the difference between two times
CFileTime myFT1, myFT2;
CFileTimeSpan myFTS;

// Get the first time
myFT1 = CFileTime::GetCurrentTime();

// Pause for a moment
UINT randVal;
rand_s(&randVal);
Sleep(randVal % 10000);

// Get the second time
myFT2 = CFileTime::GetCurrentTime();

// Calculate the time difference
myFTS = myFT2 - myFT1;

// Measure the difference
if (myFTS.GetTimeSpan() < CFileTime::Minute)
   printf_s("Less than a minute passed\n");
else
   printf_s("A minute or more passed\n");

if (myFTS.GetTimeSpan() < CFileTime::Second)
   printf_s("Less than a second passed\n");
else
   printf_s("A second or more passed\n");

if (myFTS.GetTimeSpan() < CFileTime::Millisecond)
   printf_s("Less than a millisecond passed\n");
else
   printf_s("A millisecond or more passed\n");

CFileTime::Minute

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um minuto.

static const ULONGLONG Minute = Second* 60;

Exemplo

Confira o exemplo de CFileTime::Millisecond.

CFileTime::operator -

Esse operador é usado para realizar a subtração em um objetoCFileTime ou CFileTimeSpan.

CFileTime operator-(CFileTimeSpan span) const throw();
CFileTimeSpan operator-(CFileTime ft) const throw();

Parâmetros

span
Um objeto CFileTimeSpan.

ft
Um objeto CFileTime.

Valor retornado

Retorna um objeto CFileTime ou um objeto CFileTimeSpan que representa o resultado da diferença de hora entre os dois objetos.

CFileTime::operator !=

Esse operador compara dois objetos CFileTime para determinar a desigualdade.

bool operator!=(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se o item sendo comparado não for igual ao objeto CFileTime, caso contrário, retornará FALSE.

CFileTime::operator +

Esse operador é usado para executar a adição em um objeto CFileTimeSpan.

CFileTime operator+(CFileTimeSpan span) const throw();

Parâmetros

span
Um objeto CFileTimeSpan.

Valor retornado

Retorna um objeto CFileTime representando o resultado da hora original mais uma hora relativa.

CFileTime::operator +=

Esse operador é usado para executar a adição em um objeto CFileTimeSpan e atribuir o resultado ao objeto atual.

CFileTime& operator+=(CFileTimeSpan span) throw();

Parâmetros

span
Um objeto CFileTimeSpan.

Valor retornado

Retorna o objeto CFileTime atualizado representando o resultado da hora original mais uma hora relativa.

CFileTime::operator <

Esse operador compara dois objetos CFileTime para determinar o menor.

bool operator<(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se o primeiro objeto for menor (mais cedo) que o segundo, caso contrário, retornará FALSE.

Exemplo

// Test for one time less than another
// Declare the CFileType objects
CFileTime myFT1, myFT2;

// Obtain the first time value
myFT1 = CFileTime::GetCurrentTime();

// Pause for a moment...
Sleep(1000);

// Obtain the second time value
myFT2 = CFileTime::GetCurrentTime();

// Perform the comparison
if (myFT1 < myFT2)
   _tprintf_s(_T("Time is going in the correct direction.\n"));
else
   _tprintf_s(_T("Oh dear. Time is going backwards.\n"));

CFileTime::operator <>=

Esse operador compara dois objetos CFileTime para determinar a igualdade ou o menor.

bool operator<=(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se o primeiro objeto for menor (mais cedo) ou igual ao segundo, caso contrário, retornará FALSE.

CFileTime::operator =

O operador de atribuição.

CFileTime& operator=(const FILETIME& ft) throw();

Parâmetros

ft
Um objeto CFileTime contendo a nova hora e data.

Valor retornado

Retorna o objeto atualizado CFileTime.

CFileTime::operator -=

Esse operador é usado para executar a subtração em um objeto CFileTimeSpan e atribuir o resultado ao objeto atual.

CFileTime& operator-=(CFileTimeSpan span) throw();

Parâmetros

span
Um objeto CFileTimeSpan contendo o tempo relativo para subtrair.

Valor retornado

Retorna o objeto atualizado CFileTime.

CFileTime::operator ==

Esse operador compara dois objetos CFileTime quanto à igualdade.

bool operator==(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se os objetos forem iguais; caso contrário, FALSE.

CFileTime::operator >

Esse operador compara dois objetos CFileTime para determinar o maior.

bool operator>(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se o primeiro objeto for maior (mais tarde) que o segundo, caso contrário, retornará FALSE.

CFileTime::operator >=

Esse operador compara dois objetos CFileTime para determinar a igualdade ou o maior.

bool operator>=(CFileTime ft) const throw();

Parâmetros

ft
O objeto CFileTime a ser comparado.

Valor retornado

Retornará TRUE se o primeiro objeto for maior que (mais tarde) ou igual ao segundo, caso contrário, retornará FALSE.

CFileTime::Second

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem um dia.

static const ULONGLONG Second = Millisecond* 1000;

Exemplo

Confira o exemplo de CFileTime::Millisecond.

CFileTime::SetTime

Chame esse método para definir a data e a hora armazenadas pelo objeto CFileTime.

void SetTime(ULONGLONG nTime) throw();

Parâmetros

nTime
O valor de 64 bits representando a data e a hora, no formato local ou UTC (Tempo Universal Coordenado).

CFileTime::UTCToLocal

Chame esse método para converter a hora com base em UTC (Tempo Universal Coordenado) para a hora de arquivo local.

CFileTime UTCToLocal() const throw();

Valor retornado

Retorna um objeto CFileTime contendo a hora no formato de hora do arquivo local.

Exemplo

// Convert a UTC time to local file time format
CFileTime myUTC_FT, myL_FT;
// Get system time (in UTC format)
myUTC_FT = CFileTime::GetCurrentTime();
// Convert to local file time
myL_FT = myUTC_FT.UTCToLocal();         

CFileTime::Week

Um membro de dados estáticos que armazena o número de intervalos de 100 nanossegundos que compõem uma semana.

static const ULONGLONG Week = Day* 7;

Exemplo

Confira o exemplo de CFileTime::Millisecond.

Confira também

FILETIME
CFileTimeSpan classe
Gráfico de hierarquia
Classes compartilhadas ATL/MFC