Třída CFileTime
Tato třída poskytuje metody pro správu hodnot data a času přidružených k souboru.
Syntaxe
class CFileTime : public FILETIME
Členové
Veřejné konstruktory
Název | Popis |
---|---|
CFileTime::CFileTime |
Konstruktor |
Veřejné metody
Název | Popis |
---|---|
CFileTime::GetCurrentTime |
Voláním této statické funkce načtěte CFileTime objekt, který představuje aktuální systémové datum a čas. |
CFileTime::GetTime |
Voláním této metody načtěte čas z objektu CFileTime . |
CFileTime::LocalToUTC |
Voláním této metody převedete čas místního souboru na čas souboru na základě koordinovaného univerzálního času (UTC). |
CFileTime::SetTime |
Voláním této metody nastavíte datum a čas uložený objektem CFileTime . |
CFileTime::UTCToLocal |
Voláním této metody převedete čas založený na koordinovaném univerzálním čase (UTC) na místní čas souboru. |
Veřejné operátory
Název | Popis |
---|---|
CFileTime::operator - |
Tento operátor slouží k provádění odčítání u objektu nebo CFileTimeSpan objektuCFileTime . |
CFileTime::operator != |
Tento operátor porovnává dva CFileTime objekty pro nerovnost. |
CFileTime::operator + |
Tento operátor slouží k přidání objektu CFileTimeSpan . |
CFileTime::operator += |
Tento operátor slouží k provádění sčítání objektu CFileTimeSpan a přiřazení výsledku k aktuálnímu objektu. |
CFileTime::operator < |
Tento operátor porovnává dva CFileTime objekty, aby určil menší. |
CFileTime::operator <= |
Tento operátor porovnává dva CFileTime objekty k určení rovnosti nebo menší. |
CFileTime::operator = |
Operátor přiřazení. |
CFileTime::operator -= |
Tento operátor slouží k provádění odčítání objektu CFileTimeSpan a přiřazení výsledku k aktuálnímu objektu. |
CFileTime::operator == |
Tento operátor porovnává dva CFileTime objekty pro rovnost. |
CFileTime::operator > |
Tento operátor porovná dva CFileTime objekty a určí větší objekty. |
CFileTime::operator >= |
Tento operátor porovná dva CFileTime objekty a určí rovnost nebo větší. |
Veřejné konstanty
Název | Popis |
---|---|
CFileTime::Day |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden den. |
CFileTime::Hour |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jednu hodinu. |
CFileTime::Millisecond |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden milisekund. |
CFileTime::Minute |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jednu minutu. |
CFileTime::Second |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jednu sekundu. |
CFileTime::Week |
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden týden. |
Poznámky
Tato třída poskytuje metody pro správu hodnot data a času spojených s vytvářením, přístupem a úpravou souborů. Metody a data této třídy se často používají společně s CFileTimeSpan
objekty, které se zabývají relativními časovými hodnotami.
Hodnota data a času je uložena jako 64bitová hodnota představující počet intervalů 100 nanosekund od 1. ledna 1601. Tento formát je formát UTC (Coordinated Universal Time).
Pro zjednodušení výpočtů jsou k dispozici následující statické členské proměnné const:
Proměnná člena | Počet intervalů 100 nanosekund |
---|---|
Milisekunda | 10,000 |
Second | Milisekunda * 1 000 |
Minuta | Druhý * 60 |
Hodina | Minuta * 60 |
Den | Hodina * 24 |
Týden | Den * 7 |
Poznámka:
Ne všechny systémy souborů mohou zaznamenávat vytváření a čas posledního přístupu a ne všechny systémy souborů je zaznamenávají stejným způsobem. Například v systému souborů SYSTÉM WINDOWS NT FAT má doba vytvoření rozlišení 10 milisekund, doba zápisu má rozlišení 2 sekundy a doba přístupu má rozlišení 1 den (datum přístupu). V systému souborů NTFS má doba přístupu rozlišení 1 hodinu. Kromě toho časy záznamů FAT na disku v místním čase, ale časy záznamů NTFS na disku v UTC. Další informace najdete v tématu Časy souborů.
Hierarchie dědičnosti
Požadavky
Hlavička: atltime.h
CFileTime::CFileTime
Konstruktor
CFileTime() throw();
CFileTime(const FILETIME& ft) throw();
CFileTime(ULONGLONG nTime) throw();
Parametry
ft
Struktura FILETIME
.
nTime
Datum a čas vyjádřené jako 64bitová hodnota.
Poznámky
Objekt CFileTime
lze vytvořit pomocí existujícího data a času ze FILETIME
struktury nebo vyjádřený jako 64bitová hodnota (v místním nebo koordinovaném univerzálním čase (UTC) formátu času). Výchozí konstruktor nastaví čas na hodnotu 0.
CFileTime::Day
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden den.
static const ULONGLONG Day = Hour* 24;
Příklad
Podívejte se na příklad pro CFileTime::Millisecond
.
CFileTime::GetCurrentTime
Voláním této statické funkce načtěte CFileTime
objekt, který představuje aktuální systémové datum a čas.
static CFileTime GetCurrentTime() throw();
Vrácená hodnota
Vrátí aktuální systémové datum a čas ve formátu UTC (Coordinated Universal Time).
Příklad
// Retrieve the current time
CFileTime myFT;
myFT = CFileTime::GetCurrentTime();
CFileTime::GetTime
Voláním této metody načtěte čas z objektu CFileTime
.
ULONGLONG GetTime() const throw();
Vrácená hodnota
Vrátí datum a čas jako 64bitové číslo, které může být v místním nebo koordinovaném univerzálním čase (UTC).
CFileTime::Hour
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jednu hodinu.
static const ULONGLONG Hour = Minute* 60;
Příklad
Podívejte se na příklad pro CFileTime::Millisecond
.
CFileTime::LocalToUTC
Voláním této metody převedete čas místního souboru na čas souboru na základě koordinovaného univerzálního času (UTC).
CFileTime LocalToUTC() const throw();
Vrácená hodnota
CFileTime
Vrátí objekt obsahující čas ve formátu UTC.
Příklad
Podívejte se na příklad pro CFileTime::UTCToLocal
.
CFileTime::Millisecond
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden milisekund.
static const ULONGLONG Millisecond = 10000;
Příklad
// 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
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jednu minutu.
static const ULONGLONG Minute = Second* 60;
Příklad
Podívejte se na příklad pro CFileTime::Millisecond
.
CFileTime::operator -
Tento operátor slouží k provádění odčítání u objektu nebo CFileTimeSpan
objektuCFileTime
.
CFileTime operator-(CFileTimeSpan span) const throw();
CFileTimeSpan operator-(CFileTime ft) const throw();
Parametry
span
Objekt CFileTimeSpan
.
ft
Objekt CFileTime
.
Vrácená hodnota
CFileTime
Vrátí objekt nebo CFileTimeSpan
objekt představující výsledek časového rozdílu mezi těmito dvěma objekty.
CFileTime::operator !=
Tento operátor porovnává dva CFileTime
objekty pro nerovnost.
bool operator!=(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který se má porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud porovnávaná položka není rovna objektu CFileTime
, jinak FALSE
.
CFileTime::operator +
Tento operátor slouží k přidání objektu CFileTimeSpan
.
CFileTime operator+(CFileTimeSpan span) const throw();
Parametry
span
Objekt CFileTimeSpan
.
Vrácená hodnota
CFileTime
Vrátí objekt představující výsledek původního času plus relativní čas.
CFileTime::operator +=
Tento operátor slouží k provádění sčítání objektu CFileTimeSpan
a přiřazení výsledku k aktuálnímu objektu.
CFileTime& operator+=(CFileTimeSpan span) throw();
Parametry
span
Objekt CFileTimeSpan
.
Vrácená hodnota
Vrátí aktualizovaný CFileTime
objekt, který představuje výsledek původního času plus relativní čas.
CFileTime::operator <
Tento operátor porovnává dva CFileTime
objekty, aby určil menší.
bool operator<(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který se má porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud je první objekt menší (dříve v čase) než druhý, FALSE
jinak.
Příklad
// 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 <>=
Tento operátor porovnává dva CFileTime
objekty k určení rovnosti nebo menší.
bool operator<=(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který se má porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud je první objekt menší než (dříve v čase) nebo roven druhé, jinak FALSE
.
CFileTime::operator =
Operátor přiřazení.
CFileTime& operator=(const FILETIME& ft) throw();
Parametry
ft
Objekt CFileTime
obsahující nový čas a datum.
Vrácená hodnota
Vrátí aktualizovaný CFileTime
objekt.
CFileTime::operator -=
Tento operátor slouží k provádění odčítání objektu CFileTimeSpan
a přiřazení výsledku k aktuálnímu objektu.
CFileTime& operator-=(CFileTimeSpan span) throw();
Parametry
span
Objekt CFileTimeSpan
obsahující relativní čas, který se má odečíst.
Vrácená hodnota
Vrátí aktualizovaný CFileTime
objekt.
CFileTime::operator ==
Tento operátor porovnává dva CFileTime
objekty pro rovnost.
bool operator==(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který chcete porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud jsou objekty stejné, jinak FALSE
.
CFileTime::operator >
Tento operátor porovná dva CFileTime
objekty a určí větší objekty.
bool operator>(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který se má porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud je první objekt větší než (později v čase) než druhý, jinak FALSE
.
CFileTime::operator >=
Tento operátor porovná dva CFileTime
objekty a určí rovnost nebo větší.
bool operator>=(CFileTime ft) const throw();
Parametry
ft
Objekt CFileTime
, který se má porovnat.
Vrácená hodnota
Vrátí TRUE
, pokud je první objekt větší než (později v čase) nebo roven druhé, jinak FALSE
.
CFileTime::Second
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden den.
static const ULONGLONG Second = Millisecond* 1000;
Příklad
Podívejte se na příklad pro CFileTime::Millisecond
.
CFileTime::SetTime
Voláním této metody nastavíte datum a čas uložený objektem CFileTime
.
void SetTime(ULONGLONG nTime) throw();
Parametry
nTime
64bitová hodnota představující datum a čas v místním nebo koordinovaném univerzálním čase (UTC) formátu.
CFileTime::UTCToLocal
Voláním této metody převedete čas založený na koordinovaném univerzálním čase (UTC) na místní čas souboru.
CFileTime UTCToLocal() const throw();
Vrácená hodnota
CFileTime
Vrátí objekt obsahující čas v místním formátu času souboru.
Příklad
// 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
Statický datový člen ukládá počet intervalů 100 nanosekund, které tvoří jeden týden.
static const ULONGLONG Week = Day* 7;
Příklad
Podívejte se na příklad pro CFileTime::Millisecond
.
Viz také
FILETIME
Třída CFileTimeSpan
Hierarchy chart
Sdílené třídy ATL/MFC