Klasa CFileTime

Ta klasa udostępnia metody zarządzania wartościami daty i godziny skojarzonymi z plikiem.

Składnia

class CFileTime :  public FILETIME

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CFileTime::CFileTime Konstruktor.

Metody publiczne

Nazwa/nazwisko opis
CFileTime::GetCurrentTime Wywołaj tę funkcję statyczną, aby pobrać obiekt reprezentujący bieżącą CFileTime datę i godzinę systemu.
CFileTime::GetTime Wywołaj tę metodę, aby pobrać czas z CFileTime obiektu.
CFileTime::LocalToUTC Wywołaj tę metodę, aby przekonwertować czas pliku lokalnego na czas pliku na podstawie uniwersalnego czasu koordynowanego (UTC).
CFileTime::SetTime Wywołaj tę metodę, aby ustawić datę i godzinę przechowywaną CFileTime przez obiekt.
CFileTime::UTCToLocal Wywołaj tę metodę, aby przekonwertować czas na podstawie uniwersalnego czasu koordynowanego (UTC) na czas pliku lokalnego.

Operatory publiczne

Nazwa/nazwisko opis
CFileTime::operator - Ten operator służy do odejmowania obiektu CFileTime lub CFileTimeSpan .
CFileTime::operator != Ten operator porównuje dwa CFileTime obiekty pod kątem nierówności.
CFileTime::operator + Ten operator służy do dodawania CFileTimeSpan do obiektu.
CFileTime::operator += Ten operator służy do dodawania CFileTimeSpan do obiektu i przypisywania wyniku do bieżącego obiektu.
CFileTime::operator < Ten operator porównuje dwa CFileTime obiekty, aby określić mniejsze.
CFileTime::operator <= Ten operator porównuje dwa CFileTime obiekty w celu określenia równości lub mniejszej.
CFileTime::operator = Operator przypisania.
CFileTime::operator -= Ten operator służy do odejmowania obiektu CFileTimeSpan i przypisywania wyniku do bieżącego obiektu.
CFileTime::operator == Ten operator porównuje dwa CFileTime obiekty pod kątem równości.
CFileTime::operator > Ten operator porównuje dwa CFileTime obiekty w celu określenia większego.
CFileTime::operator >= Ten operator porównuje dwa CFileTime obiekty w celu określenia równości lub większej.

Stałe publiczne

Nazwa/nazwisko opis
CFileTime::Day Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jeden dzień.
CFileTime::Hour Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jedną godzinę.
CFileTime::Millisecond Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jedną milisekundę.
CFileTime::Minute Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które tworzą jedną minutę.
CFileTime::Second Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jedną sekundę.
CFileTime::Week Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jeden tydzień.

Uwagi

Ta klasa udostępnia metody zarządzania wartościami daty i godziny skojarzonymi z tworzeniem, dostępem i modyfikowaniem plików. Metody i dane tej klasy są często używane razem z obiektami, które zajmują się względnymi wartościami CFileTimeSpan czasu.

Wartość daty i godziny jest przechowywana jako wartość 64-bitowa reprezentująca liczbę 100-nanosekundowych interwałów od 1 stycznia 1601 roku. Ten format jest formatem uniwersalnego czasu koordynowanego (UTC).

Następujące statyczne zmienne składowe const są udostępniane w celu uproszczenia obliczeń:

Zmienna składowa Liczba 100-nanosekundowych interwałów
Milisekunda 10,000
Second Milisekunda * 1000
Minuta Drugi * 60
Godzina Minuta * 60
Dzień Godzina * 24
Tydzień Dzień * 7

Uwaga

Nie wszystkie systemy plików mogą rejestrować tworzenie i czas ostatniego dostępu, a nie wszystkie systemy plików rejestrują je w ten sam sposób. Na przykład w systemie plików Windows NT FAT czas tworzenia ma rozdzielczość 10 milisekund, czas zapisu ma rozdzielczość 2 sekund, a czas dostępu ma rozdzielczość 1 dnia (data dostępu). W systemie plików NTFS czas dostępu ma rozdzielczość 1 godziny. Ponadto funkcja FAT rejestruje czasy na dysku w czasie lokalnym, ale system plików NTFS rejestruje czasy na dysku w formacie UTC. Aby uzyskać więcej informacji, zobacz Czasy plików.

Hierarchia dziedziczenia

FILETIME
 └ CFileTime

Wymagania

Nagłówek: atltime.h

CFileTime::CFileTime

Konstruktor.

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

Parametry

ft
Struktura FILETIME .

nTime
Data i godzina wyrażona jako wartość 64-bitowa.

Uwagi

Obiekt CFileTime można utworzyć przy użyciu istniejącej daty i godziny ze FILETIME struktury lub wyrażonej jako wartość 64-bitowa (w formatach czasu lokalnego lub uniwersalnego czasu koordynowanego (UTC). Domyślny konstruktor ustawia czas na 0.

CFileTime::Day

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jeden dzień.

static const ULONGLONG Day = Hour* 24;

Przykład

Zobacz przykład dla elementu CFileTime::Millisecond.

CFileTime::GetCurrentTime

Wywołaj tę funkcję statyczną, aby pobrać obiekt reprezentujący bieżącą CFileTime datę i godzinę systemu.

static CFileTime GetCurrentTime() throw();

Wartość zwracana

Zwraca bieżącą datę i godzinę systemu w formacie uniwersalnego czasu koordynowanego (UTC).

Przykład

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

CFileTime::GetTime

Wywołaj tę metodę, aby pobrać czas z CFileTime obiektu.

ULONGLONG GetTime() const throw();

Wartość zwracana

Zwraca datę i godzinę jako liczbę 64-bitową, która może być w formacie lokalnym lub uniwersalnym koordynowanym (UTC).

CFileTime::Hour

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jedną godzinę.

static const ULONGLONG Hour = Minute* 60;

Przykład

Zobacz przykład dla elementu CFileTime::Millisecond.

CFileTime::LocalToUTC

Wywołaj tę metodę, aby przekonwertować czas pliku lokalnego na czas pliku na podstawie uniwersalnego czasu koordynowanego (UTC).

CFileTime LocalToUTC() const throw();

Wartość zwracana

CFileTime Zwraca obiekt zawierający czas w formacie UTC.

Przykład

Zobacz przykład dla elementu CFileTime::UTCToLocal.

CFileTime::Millisecond

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jedną milisekundę.

static const ULONGLONG Millisecond = 10000;

Przykład

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

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które tworzą jedną minutę.

static const ULONGLONG Minute = Second* 60;

Przykład

Zobacz przykład dla elementu CFileTime::Millisecond.

CFileTime::operator -

Ten operator służy do odejmowania obiektu CFileTime lub CFileTimeSpan .

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

Parametry

span
Obiekt CFileTimeSpan.

ft
Obiekt CFileTime.

Wartość zwracana

CFileTime Zwraca obiekt lub CFileTimeSpan obiekt reprezentujący wynik różnicy czasu między dwoma obiektami.

CFileTime::operator !=

Ten operator porównuje dwa CFileTime obiekty pod kątem nierówności.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca wartość TRUE , jeśli porównywany element nie jest równy obiektowi CFileTime , w przeciwnym razie FALSE.

CFileTime::operator +

Ten operator służy do dodawania CFileTimeSpan do obiektu.

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

Parametry

span
Obiekt CFileTimeSpan.

Wartość zwracana

CFileTime Zwraca obiekt reprezentujący wynik oryginalnego czasu oraz czas względny.

CFileTime::operator +=

Ten operator służy do dodawania CFileTimeSpan do obiektu i przypisywania wyniku do bieżącego obiektu.

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

Parametry

span
Obiekt CFileTimeSpan.

Wartość zwracana

Zwraca zaktualizowany CFileTime obiekt reprezentujący wynik oryginalnego czasu oraz czas względny.

CFileTime::operator <

Ten operator porównuje dwa CFileTime obiekty, aby określić mniejsze.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca wartość TRUE , jeśli pierwszy obiekt jest mniejszy (wcześniej w czasie) niż drugi, FALSE w przeciwnym razie.

Przykład

// 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 <>=

Ten operator porównuje dwa CFileTime obiekty w celu określenia równości lub mniejszej.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca wartość TRUE , jeśli pierwszy obiekt jest mniejszy niż (wcześniej w czasie) lub równy drugiemu, w przeciwnym razie FALSE.

CFileTime::operator =

Operator przypisania.

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

Parametry

ft
CFileTime Obiekt zawierający nową godzinę i datę.

Wartość zwracana

Zwraca zaktualizowany CFileTime obiekt.

CFileTime::operator -=

Ten operator służy do odejmowania obiektu CFileTimeSpan i przypisywania wyniku do bieżącego obiektu.

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

Parametry

span
CFileTimeSpan Obiekt zawierający względny czas odejmowania.

Wartość zwracana

Zwraca zaktualizowany CFileTime obiekt.

CFileTime::operator ==

Ten operator porównuje dwa CFileTime obiekty pod kątem równości.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca wartość TRUE , jeśli obiekty są równe, w przeciwnym razie FALSE.

CFileTime::operator >

Ten operator porównuje dwa CFileTime obiekty w celu określenia większego.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca TRUE wartość , jeśli pierwszy obiekt jest większy niż (później w czasie) niż drugi, w przeciwnym razie FALSE.

CFileTime::operator >=

Ten operator porównuje dwa CFileTime obiekty w celu określenia równości lub większej.

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

Parametry

ft
Obiekt CFileTime do porównania.

Wartość zwracana

Zwraca TRUE wartość , jeśli pierwszy obiekt jest większy niż (później w czasie) lub równy drugiemu, w przeciwnym razie FALSE.

CFileTime::Second

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jeden dzień.

static const ULONGLONG Second = Millisecond* 1000;

Przykład

Zobacz przykład dla elementu CFileTime::Millisecond.

CFileTime::SetTime

Wywołaj tę metodę, aby ustawić datę i godzinę przechowywaną CFileTime przez obiekt.

void SetTime(ULONGLONG nTime) throw();

Parametry

nTime
Wartość 64-bitowa reprezentująca datę i godzinę w formacie lokalnym lub uniwersalnym koordynowanym (UTC).

CFileTime::UTCToLocal

Wywołaj tę metodę, aby przekonwertować czas na podstawie uniwersalnego czasu koordynowanego (UTC) na czas pliku lokalnego.

CFileTime UTCToLocal() const throw();

Wartość zwracana

CFileTime Zwraca obiekt zawierający czas w formacie czasu pliku lokalnego.

Przykład

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

Statyczny element członkowski danych przechowujący liczbę 100-nanosekundowych interwałów, które składają się na jeden tydzień.

static const ULONGLONG Week = Day* 7;

Przykład

Zobacz przykład dla elementu CFileTime::Millisecond.

Zobacz też

FILETIME
Klasa CFileTimeSpan
Wykres hierarchii
Klasy udostępnione ATL/MFC