COleDateTime-Klasse
Kapselt den Datentyp, der in der DATE
OLE-Automatisierung verwendet wird.
Syntax
class COleDateTime
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
COleDateTime::COleDateTime | Erstellt ein COleDateTime -Objekt. |
Öffentliche Methoden
Name | Beschreibung |
---|---|
COleDateTime::Format | Generiert eine formatierte Zeichenfolgendarstellung eines COleDateTime Objekts. |
COleDateTime::GetAsDBTIMESTAMP | Rufen Sie diese Methode auf, um die Zeit im COleDateTime Objekt als DBTIMESTAMP Datenstruktur abzurufen. |
COleDateTime::GetAsSystemTime | Rufen Sie diese Methode auf, um die Zeit im COleDateTime Objekt als SYSTEMTIME-Datenstruktur abzurufen. |
COleDateTime::GetAsUDATE | Rufen Sie diese Methode auf, um die Zeit in der COleDateTime Datenstruktur abzurufen UDATE . |
COleDateTime::GetCurrentTime | Erstellt ein COleDateTime Objekt, das die aktuelle Zeit darstellt (statische Memberfunktion). |
COleDateTime::GetDay | Gibt den Tag zurück, an dem dieses COleDateTime Objekt darstellt (1 - 31). |
COleDateTime::GetDayOfWeek | Gibt den Wochentag zurück, den dieses COleDateTime Objekt darstellt (Sonntag = 1). |
COleDateTime::GetDayOfYear | Gibt den Tag des Jahres zurück, den dieses COleDateTime Objekt darstellt (1. Januar = 1). |
COleDateTime::GetHour | Gibt die Stunde zurück, die dieses COleDateTime Objekt darstellt (0 - 23). |
COleDateTime::GetMinute | Gibt die Minute zurück, die dieses COleDateTime Objekt darstellt (0 - 59). |
COleDateTime::GetMonth | Gibt den Monat zurück, den dieses COleDateTime Objekt darstellt (1 - 12). |
COleDateTime::GetSecond | Gibt das zweite Objekt zurück, das dieses COleDateTime Objekt darstellt (0 - 59). |
COleDateTime::GetStatus | Ruft den Status (Gültigkeit) dieses COleDateTime Objekts ab. |
COleDateTime::GetYear | Gibt das Jahr zurück, das dieses COleDateTime Objekt darstellt. |
COleDateTime::P arseDateTime | Liest einen Datums-/Uhrzeitwert aus einer Zeichenfolge und legt den Wert von COleDateTime . |
COleDateTime::SetDate | Legt den Wert dieses COleDateTime Objekts auf den angegebenen Datums-only-Wert fest. |
COleDateTime::SetDateTime | Legt den Wert dieses COleDateTime Objekts auf den angegebenen Datums-/Uhrzeitwert fest. |
COleDateTime::SetStatus | Legt den Status (Gültigkeit) dieses COleDateTime Objekts fest. |
COleDateTime::SetTime | Legt den Wert dieses COleDateTime Objekts auf den angegebenen Schreibzeitwert fest. |
Öffentliche Operatoren
Name | Beschreibung |
---|---|
COleDateTime::operator ==, COleDateTime::operator <usw. | Vergleichen Sie zwei COleDateTime Werte. |
COleDateTime::operator +, COleDateTime::operator - | Addieren und Subtrahieren COleDateTime von Werten. |
COleDateTime::operator +=, COleDateTime::operator -= | Addieren und subtrahieren Sie einen COleDateTime Wert von diesem COleDateTime Objekt. |
COleDateTime::operator = | Kopiert einen COleDateTime Wert. |
COleDateTime::operator DATE, COleDateTime::operator Date* | Wandelt einen Wert in ein COleDateTime DATE oder ein DATE* . |
Öffentliche Datenmember
Name | Beschreibung |
---|---|
COleDateTime::m_dt | Enthält den zugrunde liegenden DATE Wert für dieses COleDateTime Objekt. |
COleDateTime::m_status | Enthält den Status dieses COleDateTime Objekts. |
Hinweise
COleDateTime
besitzt keine Basisklasse.
Es ist einer der möglichen Typen für den VARIANT-Datentyp der OLE-Automatisierung. Ein COleDateTime
Wert stellt einen absoluten Datums- und Uhrzeitwert dar.
Der DATE
Typ wird als Gleitkommawert implementiert. Die Tage werden ab dem 30. Dezember 1899 um Mitternacht gemessen. Die folgende Tabelle enthält einige Datumsangaben und die zugehörigen Werte:
Datum | Wert |
---|---|
29. Dezember 1899, Mitternacht | –1,0 |
29. Dezember 1899, 6 Uhr | -1,25 |
30. Dezember 1899, Mitternacht | 0,0 |
31. Dezember 1899, Mitternacht | 1.0 |
1. Januar 1900, 6 Uhr | 2,25 |
Achtung
In der obigen Tabelle werden die Tageswerte zwar vor Mitternacht am 30. Dezember 1899 negativ, die Tageszeitwerte jedoch nicht. Beispielsweise wird 6:00 Uhr immer durch einen Bruchwert 0,25 dargestellt, unabhängig davon, ob die ganze Zahl, die den Tag darstellt, positiv ist (nach dem 30. Dezember 1899) oder negativ (vor dem 30. Dezember 1899). Dies bedeutet, dass ein einfacher Gleitkommavergleich fälschlicherweise eine COleDateTime
Darstellung von 12:00 Uhr am 29.12.1899 als später als eine ab 7:00 Uhr am selben Tag darstellt.
Die COleDateTime
Kurshandles liegen zwischen dem 1. Januar 100 und dem 31. Dezember 9999. Die COleDateTime
Klasse verwendet den gregorianischen Kalender; es unterstützt keine julianischen Datumsangaben. COleDateTime
ignoriert Sommerzeit. (Siehe Datum und Uhrzeit: Automatisierungsunterstützung.)
Hinweis
Sie können das %y
Format verwenden, um ein zweistelliges Jahr nur für Datumsangaben ab 1900 abzurufen. Wenn Sie das %y
Format an einem Datum vor 1900 verwenden, generiert der Code einen ASSERT-Fehler.
Dieser Typ wird auch verwendet, um Nur-Datums- oder Uhrzeitwerte darzustellen. Standardmäßig wird das Datum 0 (30. Dezember 1899) für nur Zeitwerte verwendet, und die Uhrzeit 00:00 (Mitternacht) wird für nur Datumswerte verwendet.
Wenn Sie ein COleDateTime
Objekt mithilfe eines Datums unter 100 erstellen, wird das Datum akzeptiert, aber nachfolgende Aufrufe an GetYear
, , GetMonth
, , GetHour
GetDay
, GetMinute
und GetSecond
geben -1 zurück. Bisher können Sie zweistellige Datumsangaben verwenden, aber Datumsangaben müssen in MFC 4.2 und höher 100 oder höher sein.
Um Probleme zu vermeiden, geben Sie ein vierstelliges Datum an. Zum Beispiel:
COleDateTime mytime(1996, 1, 1, 0, 0, 0);
Grundlegende arithmetische Vorgänge für die COleDateTime
Werte verwenden die Begleitklasse COleDateTimeSpan. COleDateTimeSpan
Werte definieren ein Zeitintervall. Die Beziehung zwischen diesen Klassen ähnelt dem zwischen CTime und CTimeSpan.
Weitere Informationen zu den COleDateTime
Und COleDateTimeSpan
Klassen finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Anforderungen
Header: ATLComTime.h
Relationale COleDateTime-Operatoren
Vergleichsoperatoren.
bool operator==(const COleDateTime& date) const throw();
bool operator!=(const COleDateTime& date) const throw();
bool operator<(const COleDateTime& date) const throw();
bool operator>(const COleDateTime& date) const throw();
bool operator<=(const COleDateTime& date) const throw();
bool operator>=(const COleDateTime& date) const throw();
Parameter
date
Das zu vergleichende COleDateTime
-Objekt.
Hinweise
Hinweis
Wenn eine der beiden Operanden ungültig ist, tritt ein ATLASSERT auf.
Beispiele
COleDateTime dateOne(1995, 3, 15, 12, 0, 0); // 15 March 1995 12 noon
COleDateTime dateTwo(dateOne); // 15 March 1995 12 noon
BOOL b;
b = dateOne == dateTwo; // TRUE
b = dateOne < dateTwo; // FALSE, same value
b = dateOne > dateTwo; // FALSE, same value
b = dateOne <= dateTwo; // TRUE, same value
b = dateOne >= dateTwo; // TRUE, same value
dateTwo.SetStatus(COleDateTime::invalid);
b = dateOne == dateTwo; // FALSE, different status
b = dateOne != dateTwo; // TRUE, different status
Die Operatoren >=,< =, >und <, werden bestätigt, wenn das COleDateTime
Objekt auf NULL festgelegt ist.
VARIANT v = {};
v.vt = VT_NULL;
COleDateTime t1(v);
COleDateTime t2(v);
t1 = t1 + t2;
COleDateTime::COleDateTime
Erstellt ein COleDateTime
-Objekt.
COleDateTime() throw();
COleDateTime(const VARIANT& varSrc) throw();
COleDateTime(DATE dtSrc) throw();
COleDateTime(time_t timeSrc) throw();
COleDateTime(__time64_t timeSrc) throw();
COleDateTime(const SYSTEMTIME& systimeSrc) throw();
COleDateTime(const FILETIME& filetimeSrc) throw();
COleDateTime(int nYear,
int nMonth,
int nDay,
int nHour,
int nMin,
int nSec) throw();
COleDateTime(WORD wDosDate,
WORD wDosTime) throw();
COleDateTime(const DBTIMESTAMP& timeStamp) throw();
Parameter
dateSrc
Ein vorhandenes COleDateTime
Objekt, das in das neue COleDateTime
Objekt kopiert werden soll.
varSrc
Eine vorhandene VARIANT
Datenstruktur (möglicherweise ein COleVariant
Objekt), die in einen Datums-/Uhrzeitwert (VT_DATE) konvertiert und in das neue COleDateTime
Objekt kopiert werden soll.
dtSrc
Ein Datums-/Uhrzeitwert (DATE
), der in das neue COleDateTime
Objekt kopiert werden soll.
timeSrc
Ein time_t
oder __time64_t
ein Wert, der in einen Datums-/Uhrzeitwert konvertiert und in das neue COleDateTime
Objekt kopiert werden soll.
systimeSrc
Eine SYSTEMTIME
Struktur, die in einen Datums-/Uhrzeitwert konvertiert und in das neue COleDateTime
Objekt kopiert werden soll.
filetimeSrc
Eine FILETIME
Struktur, die in einen Datums-/Uhrzeitwert konvertiert und in das neue COleDateTime
Objekt kopiert werden soll. Eine FILETIME
verwendet koordinierte Weltzeit (UNIVERSAL Coordinated Time, UTC). Wenn Sie also eine Ortszeit in der Struktur übergeben, sind Die Ergebnisse falsch. Weitere Informationen finden Sie unter "Dateizeiten " im Windows SDK.
nYear, nMonth, nDay, nHour, nMin, nSec
Geben Sie die Datums- und Uhrzeitwerte an, die in das neue COleDateTime
Objekt kopiert werden sollen.
wDosDate, wDosTime
MS-DOS-Datums- und Uhrzeitwerte, die in einen Datums-/Uhrzeitwert konvertiert und in das neue COleDateTime
Objekt kopiert werden sollen.
Zeitstempel
Ein Verweis auf eine DBTimeStamp-Struktur , die die aktuelle Ortszeit enthält.
Hinweise
All diese Konstruktoren erstellen neue COleDateTime
Objekte, die für den angegebenen Wert initialisiert wurden. In der folgenden Tabelle sind gültige Bereiche für jede Datums- und Uhrzeitkomponente aufgeführt:
Datums-/Uhrzeitkomponente | Gültiger Bereich |
---|---|
year | 100 - 9999 |
Monat | 0 - 12 |
day | 0 - 31 |
Stunde | 0 - 23 |
Minute | 0 - 59 |
second | 0 - 59 |
Beachten Sie, dass die tatsächliche Obergrenze für die Tageskomponente je nach Monats- und Jahreskomponenten variiert. Ausführliche Informationen finden Sie in den SetDate
Funktionen oder SetDateTime
Memberfunktionen.
Es folgt eine kurze Beschreibung der einzelnen Konstruktoren:
COleDateTime(
) Erstellt ein Objekt, dasCOleDateTime
auf 0 initialisiert wurde (Mitternacht, 30. Dezember 1899).COleDateTime(
dateSrc
) Erstellt einCOleDateTime
Objekt aus einem vorhandenenCOleDateTime
Objekt.COleDateTime(
varSrc ) Erstellt einCOleDateTime
Objekt. Versucht, eine Struktur oder einVARIANT
COleVariant -Objekt in einen Datums-/Uhrzeitwert (VT_DATE
) zu konvertieren. Wenn diese Konvertierung erfolgreich ist, wird der konvertierte Wert in das neueCOleDateTime
Objekt kopiert. Andernfalls wird der Wert desCOleDateTime
Objekts auf 0 (Mitternacht, 30. Dezember 1899) und sein Status auf ungültig festgelegt.COleDateTime(
dtSrc
) Erstellt einCOleDateTime
Objekt aus einemDATE
Wert.COleDateTime(
timeSrc
) Erstellt einCOleDateTime
Objekt aus einemtime_t
Wert.COleDateTime(
systimeSrc ) Erstellt einCOleDateTime
Objekt aus einemSYSTEMTIME
Wert.COleDateTime(
filetimeSrc
) Erstellt einCOleDateTime
Objekt aus einemFILETIME
Wert. . EineFILETIME
verwendet koordinierte Weltzeit (UNIVERSAL Coordinated Time, UTC). Wenn Sie also eine Ortszeit in der Struktur übergeben, sind Die Ergebnisse falsch. Weitere Informationen finden Sie unter "File Times " im Windows SDK.COleDateTime(
nYear
,nMonth
,nDay
,nHour
,nMin
,nSec
) Erstellt einCOleDateTime
Objekt aus den angegebenen numerischen Werten.COleDateTime(
wDosDate
, )wDosTime
Erstellt einCOleDateTime
Objekt aus den angegebenen MS-DOS-Datums- und Uhrzeitwerten.
Weitere Informationen zum Datentyp finden Sie in der time_t
Laufzeitbibliotheksreferenz zur Zeitfunktion.
Weitere Informationen finden Sie in den SYSTEMTIME- und FILETIME-Strukturen im Windows SDK.
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Hinweis
Der Konstruktor, DBTIMESTAMP
der den Parameter verwendet, ist nur verfügbar, wenn OLEDB.h enthalten ist.
Beispiel
time_t osBinaryTime; // C run-time time (defined in <time.h>)
time(&osBinaryTime); // Get the current time from the
// operating system.
COleDateTime time1; // initialized to 00:00am, 30 December 1899
// (and m_nStatus is valid!)
COleDateTime time2 = time1; // Copy constructor
COleDateTime time3(osBinaryTime); // from time_t
COleDateTime time4(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
SYSTEMTIME sysTime; // Win32 time information
GetSystemTime(&sysTime);
COleDateTime time5(sysTime);
COleDateTime::Format
Erstellt eine formatierte Darstellung des Datums-/Uhrzeitwerts.
CString Format(DWORD dwFlags = 0, LCID lcid = LANG_USER_DEFAULT) const;
CString Format(LPCTSTR lpszFormat) const;
CString Format(UINT nFormatID) const;
Parameter
dwFlags
Gibt eines der folgenden Gebietsschemakennzeichnungen an:
LOCALE_NOUSEROVERRIDE Verwenden Sie die Systemstandardgebietsschemaeinstellungen anstelle von benutzerdefinierten Benutzereinstellungen.
VAR_TIMEVALUEONLY Den Datumsteil während der Analyse ignorieren.
VAR_DATEVALUEONLY Den Zeitteil während der Analyse ignorieren.
lcid
Gibt die gebietsschema-ID an, die für die Konvertierung verwendet werden soll. Weitere Informationen zu Sprachbezeichnern finden Sie unter "Sprachbezeichner".
lpszFormat
Eine Formatierungszeichenfolge ähnlich der Formatierungszeichenfolge printf
. Jeder Formatierungscode, dem ein Prozentzeichen ( %
) vorangestellt ist, wird durch die entsprechende COleDateTime
Komponente ersetzt. Andere Zeichen in der Formatierungszeichenfolge werden unverändert in die zurückgegebene Zeichenfolge kopiert. Weitere Informationen finden Sie in der Laufzeitfunktion strftime. Der Wert und die Bedeutung der Formatierungscodes für Format
folgendes:
%H
Stunden am aktuellen Tag%M
Minuten in der aktuellen Stunde%S
Sekunden in der aktuellen Minute%%
Prozentzeichen
nFormatID
Die Ressourcen-ID für die Formatsteuerelementzeichenfolge.
Rückgabewert
Ein CString
Wert, der den formatierten Datums-/Uhrzeitwert enthält.
Hinweise
Wenn der Status dieses COleDateTime
Objekts null ist, ist der Rückgabewert eine leere Zeichenfolge. Wenn der Status ungültig ist, wird die Rückgabezeichenfolge von der Zeichenfolgenressource ATL_IDS_DATETIME_INVALID angegeben.
Eine kurze Beschreibung der drei Formen für diese Funktion folgt:
Format
( dwFlags, lcid)
Dieses Formular formatiert den Wert mithilfe der Sprachspezifikationen (Gebietsschema-IDs) für Datum und Uhrzeit. Mit den Standardparametern druckt dieses Formular das Datum und die Uhrzeit, es sei denn, der Zeitteil ist 0 (Mitternacht), in diesem Fall wird nur das Datum gedruckt, oder der Datumsteil ist 0 (30. Dezember 1899), in diesem Fall wird nur die Uhrzeit gedruckt. Wenn der Datums-/Uhrzeitwert 0 (30. Dezember 1899, Mitternacht) ist, wird dieses Formular mit den Standardparametern Mitternacht gedruckt.
Format
( lpszFormat)
Dieses Formular formatiert den Wert mithilfe der Formatzeichenfolge, die spezielle Formatierungscodes enthält, die einem Prozentzeichen (%) vorangestellt sind, wie in printf
. Die Formatierungszeichenfolge wird als Parameter an die Funktion übergeben. Weitere Informationen zu den Formatierungscodes finden Sie unter strftime, wcsftime in the Run-Time Library Reference.
Format
( nFormatID)
Dieses Formular formatiert den Wert mithilfe der Formatzeichenfolge, die spezielle Formatierungscodes enthält, die einem Prozentzeichen (%) vorangestellt sind, wie in printf
. Die Formatierungszeichenfolge ist eine Ressource. Die ID dieser Zeichenfolgenressource wird als Parameter übergeben. Weitere Informationen zu den Formatierungscodes finden Sie unter strftime, wcsftime in the Run-Time Library Reference.
Beispiel
COleDateTime t(1999, 3, 19, 22, 15, 0);
CString str = t.Format(_T("%A, %B %d, %Y"));
ASSERT(str == _T("Friday, March 19, 1999"));
COleDateTime::GetAsDBTIMESTAMP
Rufen Sie diese Methode auf, um die Zeit im COleDateTime
Objekt als DBTIMESTAMP
Datenstruktur abzurufen.
bool GetAsDBTIMESTAMP(DBTIMESTAMP& timeStamp) const throw();
Parameter
Zeitstempel
Ein Verweis auf eine DBTimeStamp-Struktur .
Rückgabewert
Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).
Hinweise
Speichert die resultierende Zeit in der referenzierten TimeStamp-Struktur . Die DBTIMESTAMP
von dieser Funktion initialisierte Datenstruktur hat den fraction
Member auf Null festgelegt.
Beispiel
COleDateTime t = COleDateTime::GetCurrentTime();
DBTIMESTAMP ts;
t.GetAsDBTIMESTAMP(ts); // retrieves the time in t into the ts structure
COleDateTime::GetAsSystemTime
Rufen Sie diese Methode auf, um die Zeit im COleDateTime
Objekt als SYSTEMTIME
Datenstruktur abzurufen.
bool GetAsSystemTime(SYSTEMTIME& sysTime) const throw();
Parameter
sysTime
Ein Verweis auf eine SYSTEMTIME-Struktur , um den konvertierten Datums-/Uhrzeitwert aus dem COleDateTime
Objekt zu empfangen.
Rückgabewert
Gibt WAHR zurück, wenn dies erfolgreich ist; FALSE, wenn die Konvertierung fehlschlägt oder das COleDateTime
Objekt NULL oder ungültig ist.
Hinweise
GetAsSystemTime
speichert die resultierende Zeit im referenzierten sysTime-Objekt . Die SYSTEMTIME
von dieser Funktion initialisierte Datenstruktur hat den wMilliseconds
Member auf Null festgelegt.
Weitere Informationen zu den Statusinformationen in einem COleDateTime
Objekt finden Sie unter GetStatus.
COleDateTime::GetAsUDATE
Rufen Sie diese Methode auf, um die Zeit im COleDateTime
Objekt als UDATE
Datenstruktur abzurufen.
bool GetAsUDATE(UDATE& uDate) const throw();
Parameter
uDate
Ein Verweis auf eine UDATE
Struktur, um den konvertierten Datums-/Uhrzeitwert aus dem COleDateTime
Objekt zu empfangen.
Rückgabewert
Gibt WAHR zurück, wenn dies erfolgreich ist; FALSE, wenn die Konvertierung fehlschlägt oder das COleDateTime
Objekt NULL oder ungültig ist.
Hinweise
Eine UDATE
Struktur stellt ein "entpacktes" Datum dar.
COleDateTime::GetCurrentTime
Rufen Sie diese statische Memberfunktion auf, um den aktuellen Datums-/Uhrzeitwert zurückzugeben.
static COleDateTime WINAPI GetCurrentTime() throw();
Beispiel
// example for COleDateTime::GetCurrentTime
COleDateTime dateTest;
// dateTest value = midnight 30 December 1899
dateTest = COleDateTime::GetCurrentTime();
// dateTest value = current date and time
// a second example for COleDateTime::GetCurrentTime
// Since GetCurrentTime() is a static member, you can use it in
// a constructor:
COleDateTime t1 = COleDateTime::GetCurrentTime();
COleDateTime t2(COleDateTime::GetCurrentTime());
// Or in a normal assignment operator
COleDateTime t3;
t3 = COleDateTime::GetCurrentTime();
// or even in an expression
if (COleDateTime::GetCurrentTime().GetDayOfWeek() == 6)
_tprintf(_T("Thank Goodness it is Friday!\n\n"));
COleDateTime::GetDay
Ruft den Tag des Monats ab, der durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetDay() const throw();
Rückgabewert
Der Tag des Monats, der durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
der Tag nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 1 und 31.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
COleDateTime t(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
ASSERT(t.GetDay() == 19);
ASSERT(t.GetMonth() == 3);
ASSERT(t.GetYear() == 1999);
COleDateTime::GetDayOfWeek
Ruft den Wochentag ab, der durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetDayOfWeek() const throw();
Rückgabewert
Der Tag der Woche, der durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn der Wochentag nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 1 und 7, wobei 1=Sonntag, 2=Montag usw.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
COleDateTime t(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
ASSERT(t.GetDayOfWeek() == 6); // it's a Friday
COleDateTime::GetDayOfYear
Ruft den Tag des Jahres ab, der durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetDayOfYear() const throw();
Rückgabewert
Der Tag des Jahres, der durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn der Tag des Jahres nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 1 und 366, wobei der 1. Januar = 1 ist.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
COleDateTime t(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
ASSERT(t.GetDayOfYear() == 78); // 78th day of that year
COleDateTime::GetHour
Ruft die Stunde ab, die durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetHour() const throw();
Rückgabewert
Die Stunde, die durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn die Stunde nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 0 und 23.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
COleDateTime t(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
ASSERT(t.GetSecond() == 0);
ASSERT(t.GetMinute() == 15);
ASSERT(t.GetHour() == 22);
COleDateTime::GetMinute
Ruft die Minute, die durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetMinute() const throw();
Rückgabewert
Die Minute, die durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn die Minute nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 0 und 59.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
Sehen Sie sich das Beispiel für GetHour an.
COleDateTime::GetMonth
Ruft den Monat ab, der durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetMonth() const throw();
Rückgabewert
Der Monat, der durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn der Monat nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 1 und 12.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
Sehen Sie sich das Beispiel für GetDay an.
COleDateTime::GetSecond
Ruft die zweite, die durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetSecond() const throw();
Rückgabewert
Die zweite, die durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn die zweite nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 0 und 59.
Hinweis
Die COleDateTime
Klasse unterstützt keine Schaltsekunden.
Weitere Informationen zur Implementierung finden COleDateTime
Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Beispiel
Sehen Sie sich das Beispiel für GetHour an.
COleDateTime::GetStatus
Ruft den Status (Gültigkeit) eines bestimmten COleDateTime
Objekts ab.
DateTimeStatus GetStatus() const throw();
Rückgabewert
Gibt den Status dieses COleDateTime
Werts zurück. Wenn Sie ein COleDateTime
Objekt aufrufenGetStatus
, das mit der Standardeinstellung erstellt wurde, wird es gültig zurückgegeben. Wenn Sie ein COleDateTime
Objekt aufrufenGetStatus
, das mit dem Konstruktor auf NULL initialisiert wurde, GetStatus
wird NULL zurückgegeben.
Hinweise
Der Rückgabewert wird durch den DateTimeStatus
Aufzählungstyp definiert, der innerhalb der COleDateTime
Klasse definiert ist.
enum DateTimeStatus
{
error = -1,
valid = 0,
invalid = 1, // Invalid date (out of range, etc.)
null = 2, // Literally has no value
};
Eine kurze Beschreibung dieser Statuswerte finden Sie in der folgenden Liste:
COleDateTime::error
Gibt an, dass beim Versuch, einen Teil des Datums-/Uhrzeitwerts abzurufen, ein Fehler aufgetreten ist.COleDateTime::valid
Gibt an, dass diesesCOleDateTime
Objekt gültig ist.COleDateTime::invalid
Gibt an, dass diesesCOleDateTime
Objekt ungültig ist. Das heißt, der Wert ist möglicherweise falsch.COleDateTime::null
Gibt an, dass diesesCOleDateTime
Objekt null ist, d. h., dass für dieses Objekt kein Wert angegeben wurde. (Dies ist "null" im Datenbankwert " ohne Wert" im Gegensatz zu C++ NULL.)
Der Status eines COleDateTime
Objekts ist in den folgenden Fällen ungültig:
Wenn der Wert aus einem
VARIANT
oderCOleVariant
einem Wert festgelegt wird, der nicht in einen Datums-/Uhrzeitwert konvertiert werden konnte.Wenn der Wert aus einem
time_t
,SYSTEMTIME
oderFILETIME
einem Wert festgelegt wird, der nicht in einen gültigen Datums-/Uhrzeitwert konvertiert werden konnte.Wenn der Wert mit
SetDateTime
ungültigen Parameterwerten festgelegt wird.Wenn dieses Objekt während eines arithmetischen Zuordnungsvorgangs einen Überlauf oder Unterlauf erlebt hat, nämlich
+=
oder-=
.Wenn diesem Objekt ein ungültiger Wert zugewiesen wurde.
Wenn der Status dieses Objekts explizit auf eine ungültige Verwendung
SetStatus
festgelegt wurde.
Weitere Informationen zu den Vorgängen, die den Status möglicherweise auf ungültig festlegen können, finden Sie in den folgenden Memberfunktionen:
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
COleDateTime t;
// this one is a leap year
t.SetDateTime(2000, 2, 29, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::valid);
// this date isn't valid
t.SetDateTime(1925, 2, 30, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::invalid);
// the only way to set null is to set null!
t.SetStatus(COleDateTime::null);
ASSERT(t.GetStatus() == COleDateTime::null);
COleDateTime::GetYear
Ruft das Jahr ab, das durch diesen Datums-/Uhrzeitwert dargestellt wird.
int GetYear() const throw();
Rückgabewert
Das Jahr, das durch den Wert dieses COleDateTime
Objekts dargestellt wird oder COleDateTime::error
wenn das Jahr nicht abgerufen werden konnte.
Hinweise
Gültige Rückgabewerte liegen zwischen 100 und 9999, einschließlich des Jahrhunderts.
Informationen zu anderen Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
Sehen Sie sich das Beispiel für GetDay an.
COleDateTime::m_dt
Die zugrunde liegende DATE
Struktur für dieses COleDateTime
Objekt.
DATE m_dt;
Hinweise
Achtung
Wenn Sie den Wert im Objekt ändern, auf das DATE
der von dieser Funktion zurückgegebene Zeiger zugreift, wird der Wert dieses COleDateTime
Objekts geändert. Der Status dieses COleDateTime
Objekts wird nicht geändert.
Weitere Informationen zur Implementierung des DATE
Objekts finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
COleDateTime::m_status
Enthält den Status dieses COleDateTime
Objekts.
DateTimeStatus m_status;
Hinweise
Der Typ dieses Datenelements ist der Aufzählungstyp DateTimeStatus
, der innerhalb der COleDateTime
Klasse definiert ist. Weitere Informationen finden Sie unter COleDateTime::GetStatus.
Achtung
Dieser Datenmemm ist für erweiterte Programmiersituationen vorgesehen. Sie sollten die Inlinememmfunktionen "GetStatus " und "SetStatus" verwenden. Weitere Vorsichtsmaßnahmen hinsichtlich der expliziten Festlegung dieses Datenelements finden Sie SetStatus
in diesem Fall.
COleDateTime::operator =
Kopiert einen COleDateTime
Wert.
COleDateTime& operator=(const VARIANT& varSrc) throw();
COleDateTime& operator=(DATE dtSrc) throw();
COleDateTime& operator=(const time_t& timeSrc) throw();
COleDateTime& operator=(const __time64_t& timeSrc) throw();
COleDateTime& operator=(const SYSTEMTIME& systimeSrc) throw();
COleDateTime& operator=(const FILETIME& filetimeSrc) throw();
COleDateTime& operator=(const UDATE& uDate) throw();
Hinweise
Diese überladenen Zuordnungsoperatoren kopieren den Quelldatums-/Uhrzeitwert in dieses COleDateTime
Objekt. Eine kurze Beschreibung der einzelnen überladenen Zuordnungsoperatoren:
operator =(
dateSrc
) Der Wert und der Status des Operanden werden in diesesCOleDateTime
Objekt kopiert.operator =( varSrc ) Wenn die Konvertierung des VARIANT-Werts (oder COleVariant-Objekts) in ein Datum/Uhrzeit (VT_DATE) erfolgreich ist, wird der konvertierte Wert in dieses
COleDateTime
Objekt kopiert und sein Status auf gültig festgelegt. Wenn die Konvertierung nicht erfolgreich ist, wird der Wert dieses Objekts auf Null (30. Dezember 1899, Mitternacht) und dessen Status auf ungültig festgelegt.operator =(
dtSrc
) DerDATE
Wert wird in diesesCOleDateTime
Objekt kopiert, und sein Status ist auf gültig festgelegt.operator =(
timeSrc
) Dertime_t
oder__time64_t
Wert wird konvertiert und in diesesCOleDateTime
Objekt kopiert. Wenn die Konvertierung erfolgreich ist, wird der Status dieses Objekts auf "gültig" festgelegt. Wenn dies nicht erfolgreich ist, ist sie auf "ungültig" festgelegt.operator =( systimeSrc ) Der SYSTEMTIME-Wert wird konvertiert und in dieses
COleDateTime
Objekt kopiert. Wenn die Konvertierung erfolgreich ist, wird der Status dieses Objekts auf "gültig" festgelegt. Wenn dies nicht erfolgreich ist, ist sie auf "ungültig" festgelegt.operator =(
uDate
) DerUDATE
Wert wird konvertiert und in diesesCOleDateTime
Objekt kopiert. Wenn die Konvertierung erfolgreich ist, wird der Status dieses Objekts auf "gültig" festgelegt. Wenn dies nicht erfolgreich ist, ist sie auf "ungültig" festgelegt. EineUDATE
Struktur stellt ein "entpacktes" Datum dar. Weitere Informationen finden Sie in der Funktion VarDateFromUdate.operator =(
filetimeSrc
) Der FILETIME-Wert wird konvertiert und in diesesCOleDateTime
Objekt kopiert. Wenn die Konvertierung erfolgreich ist, wird der Status dieses Objekts auf "gültig" festgelegt. andernfalls ist sie auf ungültig festgelegt.FILETIME
verwendet Universal Coordinated Time (UTC), wenn Sie also eine UTC-Zeit in der Struktur übergeben, werden Ihre Ergebnisse von UTC-Zeit in ortszeit konvertiert und als Variantenzeit gespeichert. Dieses Verhalten entspricht in Visual C++ 6.0 und Visual C++.NET 2003 SP2. Weitere Informationen finden Sie unter "File Times " im Windows SDK.
Weitere Informationen finden Sie im Variant-Eintrag im Windows SDK.
Weitere Informationen zum Datentyp finden Sie in der time_t
Laufzeitbibliotheksreferenz zur Zeitfunktion.
Weitere Informationen finden Sie in den SYSTEMTIME- und FILETIME-Strukturen im Windows SDK.
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
COleDateTime::operator +, -
Addieren und Subtrahieren ColeDateTime
von Werten.
COleDateTime operator+(COleDateTimeSpan dateSpan) const throw();
COleDateTime operator-(COleDateTimeSpan dateSpan) const throw();
COleDateTimeSpan operator-(const COleDateTime& date) const throw();
Hinweise
COleDateTime
Objekte stellen absolute Zeiten dar. COleDateTimeSpan-Objekte stellen relative Zeiten dar. Mit den ersten beiden Operatoren können Sie einen COleDateTimeSpan
Wert von einem COleDateTime
Wert addieren und subtrahieren. Mit dem dritten Operator können Sie einen Wert von einem COleDateTime
anderen subtrahieren, um einen COleDateTimeSpan
Wert zu erzielen.
Wenn eine der Operanden null ist, ist der Status des resultierenden COleDateTime
Werts null.
Wenn der resultierende COleDateTime
Wert außerhalb der Grenzen zulässiger Werte liegt, ist der Status dieses COleDateTime
Werts ungültig.
Wenn eine der Operanden ungültig ist und die andere ungültig ist, ist der Status des resultierenden COleDateTime
Werts ungültig.
The + and - operators will assert if the COleDateTime
object is set to null. Ein Beispiel finden Sie unter COleDateTime Relational Operators .
Weitere Informationen zu den gültigen, ungültigen und NULL-Statuswerten finden Sie in der m_status Membervariable.
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
COleDateTime t1(1999, 3, 19, 22, 15, 0); // 10:15PM March 19, 1999
COleDateTime t2(1999, 3, 20, 22, 15, 0); // 10:15PM March 20, 1999
// Subtract 2 COleDateTimes
COleDateTimeSpan ts = t2 - t1;
// one day is 24 * 60 * 60 == 86400 seconds
ASSERT(ts.GetTotalSeconds() == 86400L);
// Add a COleDateTimeSpan to a COleDateTime.
ASSERT((t1 + ts) == t2);
// Subtract a COleDateTimeSpan from a COleDateTime.
ASSERT((t2 - ts) == t1);
COleDateTime::operator +=, -=
Addieren und subtrahieren Sie einen ColeDateTime
Wert von diesem COleDateTime
Objekt.
COleDateTime& operator+=(COleDateTimeSpan dateSpan) throw();
COleDateTime& operator-=(COleDateTimeSpan dateSpan) throw();
Hinweise
Mit diesen Operatoren können Sie einen COleDateTimeSpan
Wert zu und von diesem COleDateTime
subtrahieren. Wenn eine der Operanden null ist, ist der Status des resultierenden COleDateTime
Werts null.
Wenn der resultierende COleDateTime
Wert außerhalb der Grenzen zulässiger Werte liegt, wird der Status dieses COleDateTime
Werts auf ungültig festgelegt.
Wenn eine der Operanden ungültig ist und andere nicht null sind, ist der Status des resultierenden COleDateTime
Werts ungültig.
Weitere Informationen zu den gültigen, ungültigen und NULL-Statuswerten finden Sie in der m_status Membervariable.
The += and -= operators will assert if the COleDateTime
object is set to null. Ein Beispiel finden Sie unter COleDateTime Relational Operators .
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
COleDateTime::operator DATE
Wandelt einen ColeDateTime
Wert in ein DATE
.
operator DATE() const throw();
Hinweise
Dieser Operator gibt ein DATE
Objekt zurück, dessen Wert aus diesem COleDateTime
Objekt kopiert wird. Weitere Informationen zur Implementierung des DATE
Objekts finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Der DATE
Operator gibt an, ob das COleDateTime
Objekt auf NULL festgelegt ist. Ein Beispiel finden Sie unter COleDateTime Relational Operators .
COleDateTime::P arseDateTime
Analysiert eine Zeichenfolge zum Lesen eines Datums-/Uhrzeitwerts.
bool ParseDateTime(
LPCTSTR lpszDate,
DWORD dwFlags = 0,
LCID lcid = LANG_USER_DEFAULT) throw();
Parameter
lpszDate
Ein Zeiger auf die mit Null beendete Zeichenfolge, die analysiert werden soll. Einzelheiten finden Sie unter "Hinweise".
dwFlags
Gibt Flags für Gebietsschemaeinstellungen und Analyse an. Mindestens eine der folgenden Flags:
LOCALE_NOUSEROVERRIDE Verwenden Sie anstelle von benutzerdefinierten Benutzereinstellungen die Standardgebietsschemaeinstellungen des Systems.
VAR_TIMEVALUEONLY Den Datumsteil während der Analyse ignorieren.
VAR_DATEVALUEONLY Den Zeitteil während der Analyse ignorieren.
lcid
Gibt die gebietsschema-ID an, die für die Konvertierung verwendet werden soll.
Rückgabewert
Gibt WAHR zurück, wenn die Zeichenfolge erfolgreich in einen Datums-/Uhrzeitwert konvertiert wurde, andernfalls FALSE.
Hinweise
Wenn die Zeichenfolge erfolgreich in einen Datums-/Uhrzeitwert konvertiert wurde, wird der Wert dieses Objekts auf diesen COleDateTime
Wert und dessen Status auf gültig festgelegt.
Hinweis
Jahreswerte müssen zwischen 100 und 9999 liegen, einschließlich.
Der parameter lpszDate kann eine Vielzahl von Formaten annehmen. Die folgenden Zeichenfolgen enthalten z. B. akzeptable Datums-/Uhrzeitformate:
"25 January 1996"
"8:30:00"
"20:30:00"
"January 25, 1996 8:30:00"
"8:30:00 Jan. 25, 1996"
"1/25/1996 8:30:00" // always specify the full year, even in a 'short date' format
Die Gebietsschema-ID wirkt sich auch darauf aus, ob das Zeichenfolgenformat für die Konvertierung in einen Datums-/Uhrzeitwert akzeptabel ist.
Bei VAR_DATEVALUEONLY wird der Zeitwert auf "0" oder "Mitternacht" festgelegt. Bei VAR_TIMEVALUEONLY wird der Datumswert auf das Datum 0 festgelegt, d. h. 30. Dezember 1899.
Wenn die Zeichenfolge nicht in einen Datums-/Uhrzeitwert konvertiert werden konnte oder wenn ein numerischer Überlauf vorhanden war, ist der Status dieses COleDateTime
Objekts ungültig.
Weitere Informationen zu den Grenzen und der Implementierung für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
COleDateTime::SetDate
Legt das Datum dieses COleDateTime
Objekts fest.
int SetDate(
int nYear,
int nMonth,
int nDay) throw();
Parameter
nYear
Gibt das Jahr an, das in dieses COleDateTime
Objekt kopiert werden soll.
nMonth
Gibt den Monat an, der in dieses COleDateTime
Objekt kopiert werden soll.
nDay
Gibt den Tag an, an den COleDateTime
das Objekt kopiert werden soll.
Rückgabewert
Null, wenn der Wert dieses COleDateTime
Objekts erfolgreich festgelegt wurde; andernfalls 1. Dieser Rückgabewert basiert auf dem DateTimeStatus
aufgezählten Typ. Weitere Informationen finden Sie in der SetStatus-Memberfunktion .
Hinweise
Das Datum wird auf die angegebenen Werte festgelegt. Die Uhrzeit ist auf 0, Mitternacht festgelegt.
In der folgenden Tabelle finden Sie Grenzen für die Parameterwerte:
Parameter | Begrenzungen |
---|---|
nYear | 100 - 9999 |
nMonth | 1 - 12 |
nDay | 0 - 31 |
Wenn der Tag des Monatsüberlaufs erfolgt, wird er in den richtigen Tag des nächsten Monats konvertiert und der Monat und/oder das Jahr entsprechend erhöht. Ein Tagwert von Null gibt den letzten Tag des vorherigen Monats an. Das Verhalten ist identisch mit SystemTimeToVariantTime
.
Wenn der durch die Parameter angegebene Datumswert ungültig ist, wird der Status dieses Objekts auf .COleDateTime::invalid
Sie sollten GetStatus verwenden, um die Gültigkeit des DATE
Werts zu überprüfen, und nicht davon ausgehen, dass der Wert von m_dt unverändert bleibt.
Hier sind einige Beispiele für Datumswerte:
nYear | nMonth | nDay | Wert |
---|---|---|---|
2.000 | 2 | 29 | 29. Februar 2000 |
1776 | 7 | 4 | 4. Juli 1776 |
1925 | 4 | 35 | 35. April 1925 (ungültiges Datum) |
10000 | 1 | 1 | 1. Januar 10000 (ungültiges Datum) |
Informationen zum Festlegen von Datum und Uhrzeit finden Sie unter COleDateTime::SetDateTime.
Informationen zu Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
// set only the date, time set to midnight
dt.SetDate(1999, 3, 19);
ASSERT(dt.GetYear() == 1999);
ASSERT(dt.GetDay() == 19);
ASSERT(dt.GetMonth() == 3);
ASSERT(dt.GetHour() == 0);
ASSERT(dt.GetMinute() == 0);
ASSERT(dt.GetSecond() == 0);
// setting the time only resets the date to 1899!
dt.SetTime(22, 15, 0);
ASSERT(dt.GetYear() == 1899);
ASSERT(dt.GetDay() == 30);
ASSERT(dt.GetMonth() == 12);
ASSERT(dt.GetHour() == 22);
ASSERT(dt.GetMinute() == 15);
ASSERT(dt.GetSecond() == 0);
COleDateTime::SetDateTime
Legt das Datum und die Uhrzeit dieses COleDateTime
Objekts fest.
int SetDateTime(
int nYear,
int nMonth,
int nDay,
int nHour,
int nMin,
int nSec) throw();
Parameter
nYear, nMonth, nDay, nHour, nMin, nSec
Geben Sie die Datums- und Uhrzeitkomponenten an, die in dieses COleDateTime
Objekt kopiert werden sollen.
Rückgabewert
Null, wenn der Wert dieses COleDateTime
Objekts erfolgreich festgelegt wurde; andernfalls 1. Dieser Rückgabewert basiert auf dem DateTimeStatus
aufgezählten Typ. Weitere Informationen finden Sie in der SetStatus-Memberfunktion .
Hinweise
In der folgenden Tabelle finden Sie Grenzen für die Parameterwerte:
Parameter | Begrenzungen |
---|---|
nYear | 100 - 9999 |
nMonth | 1 - 12 |
nDay | 0 - 31 |
nHour | 0 - 23 |
nMin | 0 - 59 |
Nsec | 0 - 59 |
Wenn der Tag des Monatsüberlaufs erfolgt, wird er in den richtigen Tag des nächsten Monats konvertiert und der Monat und/oder das Jahr entsprechend erhöht. Ein Tagwert von Null gibt den letzten Tag des vorherigen Monats an. Das Verhalten entspricht SystemTimeToVariantTime.
Wenn der durch die Parameter angegebene Datums- oder Uhrzeitwert ungültig ist, wird der Status dieses Objekts auf ungültig festgelegt, und der Wert dieses Objekts wird nicht geändert.
Hier sind einige Beispiele für Zeitwerte:
nHour | nMin | Nsec | Wert |
---|---|---|---|
1 | 3 | 3 | 01:03:03 |
23 | 45 | 0 | 23:45:00 |
25 | 30 | 0 | Ungültig |
9 | 60 | 0 | Ungültig |
Hier sind einige Beispiele für Datumswerte:
nYear | nMonth | nDay | Wert |
---|---|---|---|
1995 | 4 | 15 | 15. April 1995 |
1789 | 7 | 14 | 17. Juli 1789 |
1925 | 2 | 30 | Ungültig |
10000 | 1 | 1 | Ungültig |
Informationen zum Festlegen des Datums finden Sie unter COleDateTime::SetDate. Informationen zum Festlegen der Uhrzeit finden Sie unter COleDateTime::SetTime.
Informationen zu Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
Sehen Sie sich das Beispiel für GetStatus an.
COleDateTime::SetStatus
Legt den Status dieses COleDateTime
Objekts fest.
void SetStatus(DateTimeStatus status) throw();
Parameter
status
Der neue Statuswert für dieses COleDateTime
Objekt.
Hinweise
Der Statusparameterwert wird durch den DateTimeStatus
Aufzählungstyp definiert, der innerhalb der COleDateTime
Klasse definiert ist. Weitere Informationen finden Sie unter COleDateTime::GetStatus .
Achtung
Diese Funktion richtet sich an erweiterte Programmiersituationen. Diese Funktion ändert die Daten in diesem Objekt nicht. Es wird am häufigsten verwendet, um den Status auf NULL oder ungültig festzulegen. Der Zuordnungsoperator (Operator =) und SetDateTime legen den Status des Objekts basierend auf den Quellwerten fest.
Beispiel
Sehen Sie sich das Beispiel für GetStatus an.
COleDateTime::SetTime
Legt die Uhrzeit dieses COleDateTime
Objekts fest.
int SetTime(
int nHour,
int nMin,
int nSec) throw();
Parameter
nHour, nMin, nSec
Geben Sie die Zeitkomponenten an, die in dieses COleDateTime
Objekt kopiert werden sollen.
Rückgabewert
Null, wenn der Wert dieses COleDateTime
Objekts erfolgreich festgelegt wurde; andernfalls 1. Dieser Rückgabewert basiert auf dem DateTimeStatus
aufgezählten Typ. Weitere Informationen finden Sie in der SetStatus-Memberfunktion .
Hinweise
Die Zeit wird auf die angegebenen Werte festgelegt. Das Datum ist auf das Datum 0 festgelegt, d. h. 30. Dezember 1899.
In der folgenden Tabelle finden Sie Grenzen für die Parameterwerte:
Parameter | Begrenzungen |
---|---|
nHour | 0 - 23 |
nMin | 0 - 59 |
Nsec | 0 - 59 |
Wenn der durch die Parameter angegebene Zeitwert ungültig ist, wird der Status dieses Objekts auf ungültig festgelegt, und der Wert dieses Objekts wird nicht geändert.
Hier sind einige Beispiele für Zeitwerte:
nHour | nMin | Nsec | Wert |
---|---|---|---|
1 | 3 | 3 | 01:03:03 |
23 | 45 | 0 | 23:45:00 |
25 | 30 | 0 | Ungültig |
9 | 60 | 0 | Ungültig |
Informationen zum Festlegen von Datum und Uhrzeit finden Sie unter COleDateTime::SetDateTime.
Informationen zu Memberfunktionen, die den Wert dieses COleDateTime
Objekts abfragen, finden Sie in den folgenden Memberfunktionen:
Weitere Informationen zu den Grenzen für COleDateTime
Werte finden Sie im Artikel "Datum und Uhrzeit: Automatisierungsunterstützung".
Beispiel
Sehen Sie sich das Beispiel für SetDate an.
Siehe auch
COleVariant-Klasse
CTime-Klasse
CTimeSpan-Klasse
Hierarchiediagramm
ATL/MFC Shared Classes