![]() | Patrick's Programming Library Version 6.4.21 - Dokumentation |
Datenobjekt zum Speichern von Datum und Uhrzeit. Mehr ...
Verschiedenes | |
void | print () const |
Datum und Uhrzeit auf STDOUT ausgeben. Mehr ... | |
bool | notEmpty () const |
Prüft, ob ein Datum oder Uhrzeit vorhanden ist. Mehr ... | |
bool | isEmpty () const |
Prüft, ob ein Datum oder Uhrzeit vorhanden ist. Mehr ... | |
bool | isLeapYear () const |
Datum auf Schaltjahr prüfen. Mehr ... | |
pplint64 | diffSeconds (const CDateTime &other) const |
Differenz in Sekunden. Mehr ... | |
int | compareSeconds (const CDateTime &other, int tolerance=0) const |
Differenz in Sekunden mit Toleranz vergleichen. Mehr ... | |
static bool | isLeapYear (int year) |
Jahreszahl auf Schaltjahr prüfen. Mehr ... | |
static CDateTime | currentTime () |
Aktuelles Datum zurückgeben. Mehr ... | |
Öffentliche Typen | |
enum | PPLDataType { UNKNOWN =0, CINT =2, CSTRING =4, CASSOCARRAY =5, CBINARY =6, CWSTRING =8, CARRAY =9, CBOOL =10, CDATETIME =11 } |
Enumeration der verschiedenen Datenobjekte, die in der Library verwendet werden. Mehr ... | |
Öffentliche Methoden | |
int | DataType () const |
Liefert den Datentyp des Objekts zurück. Mehr ... | |
int | IsType (int type) const |
Konstruktoren | |
Folgende Konstruktoren stehen zur Verfügung: | |
CDateTime () | |
Konstruktor mit Initialisierung auf 0. Mehr ... | |
CDateTime (const CString &datetime) | |
Konstruktor mit Datumsinitialisierung aus einem String. Mehr ... | |
CDateTime (const CDateTime &other) | |
Copy-Konstruktor. Mehr ... | |
CDateTime (ppluint64 t) | |
Konstruktor mit Angabe von Unix-Timestamp. Mehr ... | |
Datum setzen | |
void | setTime_t (ppluint64 t) |
Datum aus Unix-Timestamp übernehmen. Mehr ... | |
int | set (const CString &datetime) |
Datum anhand eines Strings setzen. Mehr ... | |
void | set (const CDateTime &other) |
Datum aus einer anderen CDateTime-Variablen übernehmen. Mehr ... | |
int | set (const CString &date, const CString &time) |
Datum und Uhrzeit aus unterschiedlichen Strings importieren. Mehr ... | |
int | setDate (const CString &date) |
Datum setzen, Uhrzeit bleibt unverändert. Mehr ... | |
int | setTime (const CString &time) |
Uhrzeit setzen, Datum bleibt unverändert. Mehr ... | |
void | set (int year, int month, int day, int hour=0, int minute=0, int sec=0, int msec=0, int usec=0) |
Datum und Uhrzeit anhand einzelner Integer-Wert setzen. Mehr ... | |
void | setCurrentTime () |
Aktuelles Datum und Uhrzeit übernehmen. Mehr ... | |
void | clear () |
Datum auf 0 setzen. Mehr ... | |
Datum auslesen | |
void | setLongInt (ppluint64 i) |
Datum aus einem 64-Bit-Integer übernehmen. Mehr ... | |
CString | get (const CString &format="%Y-%m-%d %H:%M:%S") const |
Datum als String im angegebenen Format zurückgeben. Mehr ... | |
CString | getDate (const CString &format="%Y-%m-%d") const |
Datum als String zurückgeben. Mehr ... | |
CString | getTime (const CString &format="%H:%M:%S") const |
Uhrzeit als String zurückgeben. Mehr ... | |
CString | getISO8601 () const |
Datum als String im ISO8601-Format zurückgeben. Mehr ... | |
CString | getISO8601withMsec () const |
Datum als String im ISO8601-Format mit Millisekunden zurückgeben. Mehr ... | |
CString | getISO8601withUsec () const |
Datum als String im ISO8601-Format mit Mikrosekunden zurückgeben. Mehr ... | |
ppluint64 | time_t () const |
Datum in Unix-Timestamp umrechnen. Mehr ... | |
ppluint64 | longInt () const |
Datum als 64-Bit-Integer auslesen. Mehr ... | |
int | year () const |
Das Jahr als Integer auslesen. Mehr ... | |
int | month () const |
Den Monat als Integer auslesen. Mehr ... | |
int | day () const |
Den Tag als Integer auslesen. Mehr ... | |
int | hour () const |
Die Stunde als Integer auslesen. Mehr ... | |
int | minute () const |
Die Minute als Integer auslesen. Mehr ... | |
int | second () const |
Die Sekunde als Integer auslesen. Mehr ... | |
int | millisecond () const |
Die Millisekunden als Integer auslesen. Mehr ... | |
int | microsecond () const |
Die Mikrosekunden als Integer auslesen. Mehr ... | |
int | week () const |
Die Wochennummer als Integer auslesen. Mehr ... | |
int | weekISO8601 () const |
Die Wochennummer als Integer auslesen, Berechnung nach ISO 8601. Mehr ... | |
Operatoren | |
CDateTime & | operator= (const CString &datetime) |
Datum aus einem String übernehmen. Mehr ... | |
CDateTime & | operator= (const CDateTime &other) |
Datum aus einem anderen CDateTime-Wert übernehmen. Mehr ... | |
operator CString () const | |
Operator, der einen CString zurückliefert. Mehr ... | |
bool | operator< (const CDateTime &other) const |
Vergleichsoperator "kleiner": <. Mehr ... | |
bool | operator<= (const CDateTime &other) const |
Vergleichsoperator "kleiner oder gleich": <=. Mehr ... | |
bool | operator== (const CDateTime &other) const |
Vergleichsoperator "gleich": ==. Mehr ... | |
bool | operator!= (const CDateTime &other) const |
Vergleichsoperator "ungleich": !=. Mehr ... | |
bool | operator>= (const CDateTime &other) const |
Vergleichsoperator "größer oder gleich": >=. Mehr ... | |
bool | operator> (const CDateTime &other) const |
Vergleichsoperator "größer": > Mehr ... | |
Geschützte Attribute | |
ppluint8 | type |
Private Attribute | |
ppluint8 | dd |
Tag. Mehr ... | |
ppluint8 | hh |
Stunden. Mehr ... | |
ppluint8 | ii |
Minuten. Mehr ... | |
ppluint8 | mm |
Monat. Mehr ... | |
ppluint8 | ss |
Sekunden. Mehr ... | |
ppluint32 | us |
Mikrosekunden. Mehr ... | |
ppluint16 | yy |
Jahr. Mehr ... | |
|
inherited |
Enumeration der verschiedenen Datenobjekte, die in der Library verwendet werden
Aufzählungswerte | |
---|---|
UNKNOWN |
Unbekannter Datentyp. |
CINT |
Klasse vom Typ CInt. |
CSTRING |
Klasse vom Typ CString. |
CASSOCARRAY |
Klasse vom Typ CAssocArray. |
CBINARY |
Klasse vom Typ CBinary. |
CWSTRING |
Klasse vom Typ CWString. |
CARRAY |
Klasse vom Typ CArray. |
CBOOL |
Klasse vom Typ CBool. |
CDATETIME |
Klasse vom Typ CDateTime. |
ppl6::CDateTime::CDateTime | ( | ) |
true
zurückliefern. ppl6::CDateTime::CDateTime | ( | const CString & | datetime | ) |
datetime
enthaltenen Datums und Uhrzeit erstellt. Die unterstützten Formate sind in der Funktion set beschrieben.[in] | datetime | String mit Datum und Uhrzeit |
IllegalArgumentException | Wird geworfen, wenn der String datetime ein ungültiges oder unbekanntes Datumsformat hat. Ausnahmen: Ist der String leer oder enthält nur den Buchstaben "T" oder den Wert "0" wird keine Exception geworfen, sondern der Datumswert auf 0 gesetzt. |
ppl6::CDateTime::CDateTime | ( | const CDateTime & | other | ) |
[in] | other | Referenz auf den zu kopierenden CDateTime-Wert |
ppl6::CDateTime::CDateTime | ( | ppluint64 | t | ) |
t | 64-Bit Integer mit den Sekunden seit 1970. |
void ppl6::CDateTime::clear | ( | ) |
true
zurückliefern. Die Klasse wird somit wieder in den Ausgangszustand versetzt. int ppl6::CDateTime::compareSeconds | ( | const CDateTime & | other, |
int | tolerance = 0 |
||
) | const |
other
auf Sekundenbasis berechnet und anschließend mit der angegebenen Toleranz tolerance
verglichen.[in] | other | Zu vergleichender Zeitwert |
[in] | tolerance | Optionaler Wert, der die akzeptable Toleranz beider Werte in Sekunden angibt |
|
static |
|
inherited |
Diese Funktion liefert den Datentyp des Objekts zurück.
int ppl6::CDateTime::day | ( | ) | const |
pplint64 ppl6::CDateTime::diffSeconds | ( | const CDateTime & | other | ) | const |
other
in Sekunden zurück. Liegt der Zeitpunkt von other
vor diesem, ist der Rückgabewert negativ.Vor dem Vergleich werden beide Zeitwerte in UTC umgewandelt.
[in] | other | Zu vergleichender Zeitwert |
ppl6::CString ppl6::CDateTime::get | ( | const CString & | format = "%Y-%m-%d %H:%M:%S" | ) | const |
[in] | format | Formatierungsstring. Wird dieser nicht angegeben, wird das Datum in folgendem Format zurückgegeben: "%Y-%m-%d %H:%M:%S" |
Normale Zeichen im Format werden ohne Konvertierung kopiert. Konvertierungsanweisungen werden durch »%« charakterisiert. Folgende Anweisungen stehen zur Verfügung:
%a
Der abgekürzte Wochentag abhängig von der momentanen Locale.%A
Der gesamte Wochentag abhängig von der momentanen Locale.%b
Der abgekürzte Monatsname abhängig von der momentanen Locale.%B
Der volle Monatsname abhängig von der momentanen Locale.%c
Das bevorzugte Datums- und Uhrzeit-Repräsentation laut Einstellungen der momentanen Locale.%C
Das Jahrhundert als zweistellige Zahl.%d
Der Tag im Monat als Dezimalzahl (01 - 31).%D
Äquivalent zu %m/%d/%y. (US-amerikanisches Format. In anderen Ländern ist %d/%m/%y durchaus üblich . In internationalem Kontext ist dieses Format daher mehrdeutig und sollte nicht verwendet werden.) (SU)%e
Wie %d, der Tag im Monat als Dezimalzahl, aber eine führende Null ist durch ein Leerzeichen ersetzt. (SU)%E
Modifikator: Alternatives Format benutzen, s.u. (SU)%g
Wie %G, aber ohne das Jahrhundert, also mit zweistelligem Jahr (00-99). (TZ)%G
Das Jahr laut ISO 8601 mit dem Jahrhundert als Dezimalzahl. Das vierstellige Jahr, das zu ISO-Wochennummer (siehe %V) passt. Es hat dasselbe Format und denselben Wert wie %y, nur dass, wenn die ISO-Wochennummer zum vorhergehenden oder nächsten Jahr gehört, dieses Jahr stattdessen benutzt wird. (TZ)%h
Äquivalent zu %b. (SU)%H
Die Stunde im 24h-Format als Ganzzahl (00 - 23).%I
Die Stunde im 12h-Format als Ganzzahl (01 - 12).%j
Der Tag im Jahr als Ganzzahl (001 - 366).%k
Die Stunde im 24h-Format als Ganzzahl (0 - 23); einzelne Ziffern haben ein vorangestelltes Leerzeichen. (Siehe %H.) (TZ)%l
Die Stunde im 12h-Format als Ganzzahl (0 - 12); einzelne Ziffern haben ein vorangestelltes Leerzeichen. (Siehe %I.) (TZ)%m
Der Monat als Ganzzahl (01 - 12).%M
Die Minute als Ganzzahl (00 - 59).%n
Ein Zeilenvorschub. (SU)%O
Modifikator: Alternatives Format benutzen, s.u. (SU)%p
Entweder »AM« oder »PM«, je nach der übergebenen Uhrzeit, oder die zugehörigen Zeichenketten in der momentanen Locale. Mittag erhält »PM«, Mitternacht »AM«.%P
Wie %p, aber in Kleinbuchstaben. (GNU)%r
Zeit in AM/PM-Notation; in der POSIX-Locale ist das äquivalent zu »%I:%M:%S %p«. (SU)%R
Zeit in 24h-Notation (%H:%M). (SU) Für eine Version mit Sekunden siehe %T.%s
Die Zahl der Sekunden seit der Epoche, also seit 1970-01-01 00:00:00 UTC. (TZ)%S
Die Sekunde als Ganzzahl (00 - 61).%t
Ein Tabulatorzeichen. (SU)%T
Zeit in 24h-Notation (%H:%M:%S). (SU)%u
Der Tag der Woche als Zahl von 1 bis 7, mit Montag als 1. Siehe auch %w. (SU)%U
Die Wochennummer des aktuellen Jahres als Ganzzahl von 00 bis 53, beginnend mit dem ersten Sonntag als erster Tag der ersten Woche. Siehe auch %V und %W.%V
Die Wochennummer nach ISO 8601:1988 als Dezimalzahl von 01 bis 53, wobei Woche 1 die erste Woche ist, die wenigstens 4 Tage im laufenden Jahr hat, mit Montag als dem ersten Tag der Woche. Siehe auch %U und %W. (SU)%w
Der Tag der Woche als Zahl von 0 bis 6, mit Sonntag als 0. Siehe auch %u.%W
Die Wochennummer des aktuellen Jahres als Ganzzahl von 00 bis 53, beginnend mit dem ersten Montag als erster Tag der ersten Woche.%x
Die bevorzugte Datums-Repräsentation ohne die Zeit in der momentanen Locale.%X
Die bevorzugte Uhrzeit-Repräsentation ohne das Datum in der momentanen Locale.%y
Das Jahr als Ganzzahl ohne das Jahrhundert (00 - 99).%Y
Das Jahr als Ganzzahl mit dem Jahrhundert.%z
Die Zeitzone als Stundendifferenz zu GMT. Benötigt, um RFC822-konforme Datumsangaben zu erhalten (mit »%a, %d %b %Y %H:%M:%S %z«). (GNU)%Z
Die Zeitzone oder der Name oder die Abkürzung.%+
Datum und Zeit im Format von date(1). (TZ)%%
Das Zeichen »%«.Einige Konvertierungsanweisungen können durch vorangestelltes E oder O modifiziert werden, um anzufordern, dass ein alternatives Format benutzt werden soll. Existiert das alternative Format in der momentanen Locale nicht, ist das Verhalten so, als ob es keine Modifikation gibt. (SU)
Die Single Unix Specification erwähnt %Ec, %EC, %Ex, %EX, %Ry, %EY, %Od, %Oe, %OH, %OI, %Om, %OM, %OS, %Ou, %OU, %OV, %Ow, %OW, %Oy, wobei der Effekt von O ist, alternative numerische Symbole zu benutzen (etwa römische Zahlen), und der von E, eine Locale-abhängige alternative Repräsentation zu wählen.
ppl6::CString ppl6::CDateTime::getDate | ( | const CString & | format = "%Y-%m-%d" | ) | const |
[in] | format | Formatierungsstring. Wird dieser nicht angegeben, wird das Datum in folgendem Format zurückgegeben: "%Y-%m-%d" |
ppl6::CString ppl6::CDateTime::getISO8601 | ( | ) | const |
ppl6::CString ppl6::CDateTime::getISO8601withMsec | ( | ) | const |
ppl6::CString ppl6::CDateTime::getISO8601withUsec | ( | ) | const |
ppl6::CString ppl6::CDateTime::getTime | ( | const CString & | format = "%H:%M:%S" | ) | const |
[in] | format | Formatierungsstring. Wird dieser nicht angegeben, wird die Uhrzeit in folgendem Format zurückgegeben: "%H-%M-%S" |
int ppl6::CDateTime::hour | ( | ) | const |
bool ppl6::CDateTime::isEmpty | ( | ) | const |
true
zurück, wenn kein Datum und keine Uhrzeit gesetzt ist, der Wert also Null ist. Sie ist somit das Gegenteil zu CDateTime::notEmpty.true
oder false
bool ppl6::CDateTime::isLeapYear | ( | ) | const |
true
zurück, wenn es sich um ein Schaltjahr handelt, andernfalls false
.
|
static |
year
um ein Schaltjahr handelt oder nicht.[in] | year | Das zu prüfende Jahr |
true
zurück, wenn es sich um ein Schaltjahr handelt, andernfalls false
.
|
inherited |
ppluint64 ppl6::CDateTime::longInt | ( | ) | const |
Mit dieser Funktion werden Datum, Uhrzeit und Millisekunden als Long Integer (64 Bit) zurückgegeben, wie er von der Funktion CDateTime::setLongInt eingelesen werden kann. Der Aufbau des Integer-Wertes ist intern und kann sich von Version zu Version ändern.
int ppl6::CDateTime::microsecond | ( | ) | const |
int ppl6::CDateTime::millisecond | ( | ) | const |
int ppl6::CDateTime::minute | ( | ) | const |
int ppl6::CDateTime::month | ( | ) | const |
bool ppl6::CDateTime::notEmpty | ( | ) | const |
true
zurück, wenn ein Datum oder Uhrzeit gesetzt ist, der Wert also nicht Null ist. Sie ist somit das Gegenteil zu CDateTime::isEmpty. true
oder false
ppl6::CDateTime::operator CString | ( | ) | const |
bool ppl6::CDateTime::operator!= | ( | const CDateTime & | other | ) | const |
true
zurück, wenn die Werte nicht übereinstimmen.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn die Werte nicht übereinstimmen. bool ppl6::CDateTime::operator< | ( | const CDateTime & | other | ) | const |
true
zurück, wenn der erste Wert kleiner ist als der Zweite.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn der erste Wert kleiner ist als der Zweite. bool ppl6::CDateTime::operator<= | ( | const CDateTime & | other | ) | const |
true
zurück, wenn der erste Wert kleiner oder gleich groß ist, wie der Zweite.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn der erste Wert kleiner oder gleich gross ist wie der Zweite. datetime
übernommen. Die unterstützten Formate sind in der Funktion set beschrieben.[in] | datetime | String mit Datum und Uhrzeit |
[in] | other | Referenz auf den zu kopierenden CDateTime-Wert |
bool ppl6::CDateTime::operator== | ( | const CDateTime & | other | ) | const |
true
zurück, wenn beide Werte identisch sind.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn beide Werte identisch sind. bool ppl6::CDateTime::operator> | ( | const CDateTime & | other | ) | const |
true
zurück, wenn der erste Wert größer ist als der Zweite.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn der erste Wert größer ist als der Zweite. bool ppl6::CDateTime::operator>= | ( | const CDateTime & | other | ) | const |
true
zurück, wenn der erste Wert größer oder gleich groß ist, wie der Zweite.other | Der zweite Wert, mit dem der Vergleich durchgeführt werden soll |
true
zurück, wenn der erste Wert größer oder gleich groß ist, wie der Zweite. void ppl6::CDateTime::print | ( | ) | const |
int ppl6::CDateTime::second | ( | ) | const |
int ppl6::CDateTime::set | ( | const CString & | datetime | ) |
datetime
gesetzt. Dabei versucht die Funktion anhand mehrerer Regular Expressions zu erkennen, in welchem Format die Datumsangabe vorliegt. Es werden folgende Formate erkannt:[in] | datetime | String mit dem zu setzenden Datum und optional der Uhrzeit |
void ppl6::CDateTime::set | ( | const CDateTime & | other | ) |
[in] | other | Referenz auf eine andere CDateTime-Variable, dessen Wert kopiert werden soll. |
[in] | date | Referenz auf den String mit dem Datum. Dieses kann folgende Formate haben:
|
[in] | time | Referenz auf den String mit der Uhrzeit. Diese muss folgendes Format haben:
|
void ppl6::CDateTime::set | ( | int | year, |
int | month, | ||
int | day, | ||
int | hour = 0 , |
||
int | minute = 0 , |
||
int | sec = 0 , |
||
int | msec = 0 , |
||
int | usec = 0 |
||
) |
[in] | year | Jahreszahl zwischen 0 und 9999 |
[in] | month | Monat zwischen 1 und 12 |
[in] | day | Tag zwischen 1 und 31 |
[in] | hour | Stunde zwischen 0 und 23. Optionaler Wert, Default ist 0. |
[in] | minute | Minute zwischen 0 und 59. Optionaler Wert, Default ist 0. |
[in] | sec | Sekunde zwischen 0 und 59. Optionaler Wert, Default ist 0. |
[in] | msec | Millisekunde zwischen 0 und 999. Optionaler Wert, Default ist 0. |
[in] | usec | Mikrosekunde zwischen 0 und 999999. Optionaler Wert, Default ist 0. |
year
, month
und day
der Wert "0" angegeben, wird der Timestamp auf 0 gesetzt.void ppl6::CDateTime::setCurrentTime | ( | ) |
int ppl6::CDateTime::setDate | ( | const CString & | date | ) |
[in] | date | Referenz auf den String mit dem zu setzenden Datum. Das Format wird bei der set-Funktion genauer beschrieben. |
void ppl6::CDateTime::setLongInt | ( | ppluint64 | i | ) |
i | 64-Bit Integer |
int ppl6::CDateTime::setTime | ( | const CString & | time | ) |
[in] | time | Referenz auf den String mit der zu setzenden Uhrzeit. Das Format wird bei der set-Funktion genauer beschrieben. |
void ppl6::CDateTime::setTime_t | ( | ppluint64 | t | ) |
t | 64-Bit Integer mit den Sekunden seit 1970. |
ppluint64 ppl6::CDateTime::time_t | ( | ) | const |
int ppl6::CDateTime::week | ( | ) | const |
int ppl6::CDateTime::weekISO8601 | ( | ) | const |
int ppl6::CDateTime::year | ( | ) | const |
|
private |
|
private |
|
private |
|
private |
|
private |
|
protectedinherited |
|
private |
|
private |