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