PPL6-Icon Patrick's Programming Library Version 6.4.21 - Dokumentation
Datums- und Zeit-Funktionen

Datums- und Zeit-Funktionen. Mehr ...

Ausführliche Beschreibung

Klassen

class  ppl6::CCronjob
 Einzelner Timer für die Klasse ppl6::CCrontab. Mehr ...
 
class  ppl6::CCrontab
 Crontab zur steuerung von Timmer-Events. Mehr ...
 
class  ppl6::CTimer
 Timer-Klasse. Mehr ...
 

Funktionen

ppldd ppl6::dat2long (pplchar *dat)
 
ppluint64 ppl6::Datum2Sekunden (char *datum, char *zeit)
 
void ppl6::datumsauswertung (pplchar *d, pplchar *dat)
 
double ppl6::getmicrotime ()
 
double ppl6::GetMicrotime ()
 
ppluint64 ppl6::GetMilliSeconds ()
 Aktuelle Zeit in Millisekunden. Mehr ...
 
ppluint64 ppl6::GetTime (PPLTIME *t)
 Liefert die aktuelle Unixtime in einer Struktur zurück. Mehr ...
 
ppluint64 ppl6::GetTime (PPLTIME &t)
 Liefert die aktuelle Unixtime in einer Struktur zurück. Mehr ...
 
ppluint64 ppl6::GetTime (PPLTIME *t, ppluint64 now)
 Wandelt Unix-Zeit in die Struktur PPLTIME um. Mehr ...
 
ppluint64 ppl6::GetTime (PPLTIME &t, ppluint64 now)
 Wandelt Unix-Zeit in die Struktur PPLTIME um. Mehr ...
 
ppluint64 ppl6::GetTime ()
 Liefert die aktuelle Unixtime zurückDiese Funktion gibt die Zeit seit Beginn der "Computer-Epoche" (00:00:00 UTC, January 1, 1970) in Sekunden zurück. Mehr ...
 
ppluint64 ppl6::GetUTC (char *datum, char *zeit)
 
void ppl6::long2dat (pplchar *datstr, ppluint32 dat)
 
void ppl6::long2zeit (char *zeitstr, ppldd z)
 
ppldd ppl6::longdatum ()
 
ppldd ppl6::longzeit ()
 
const char * ppl6::MkDate (CString &buffer, const char *format, ppluint64 sec)
 Datum/Zeit formatieren. Mehr ...
 
CString ppl6::MkDate (const char *format, ppluint64 sec)
 Datum/Zeit formatieren. Mehr ...
 
char * ppl6::MkDate (char *buffer, int size, const char *format, ppluint64 sec)
 Datum/Zeit formatieren. Mehr ...
 
const char * ppl6::MkISO8601Date (CString &buffer, ppluint64 sec)
 
const char * ppl6::MkISO8601Date (CString &buffer, PPLTIME *t)
 
char * ppl6::MkISO8601Date (char *buffer, size_t size, ppluint64 sec)
 
char * ppl6::MkISO8601Date (char *buffer, size_t size, PPLTIME *t)
 
CString ppl6::MkISO8601Date (ppluint64 sec)
 
CString ppl6::MkISO8601Date (PPLTIME *t)
 
CString ppl6::MkRFC822Date (PPLTIME &t)
 Datumstring nach RFC-822 (Mailformat) erzeugen. Mehr ...
 
CString ppl6::MkRFC822Date (ppluint64 sec)
 Datumstring nach RFC-822 (Mailformat) erzeugen. Mehr ...
 
ppluint64 ppl6::MkTime (CString *year, CString *month, CString *day, CString *hour, CString *min, CString *sec)
 
ppluint64 ppl6::MkTime (const CString &year, const CString &month, const CString &day, const CString &hour, const CString &min, const CString &sec)
 
ppluint64 ppl6::MkTime (const char *year, const char *month, const char *day, const char *hour, const char *min, const char *sec)
 
ppluint64 ppl6::MkTime (int year, int month, int day, int hour, int min, int sec)
 
ppluint64 ppl6::MkTime (const char *iso8601date, PPLTIME *t)
 
ppluint64 ppl6::MkTime (CString *iso8601date, PPLTIME *t)
 
int ppl6::MSleep (ppluint64 milliseconds)
 
ppldd ppl6::sec2long (ppldd z)
 
ppldd ppl6::Sekunden2Datum (time_t sec, ppldd *datum, ppldd *uhrzeit)
 
int ppl6::SSleep (ppluint64 seconds)
 
int ppl6::usdatum (char *str1)
 
int ppl6::USleep (ppluint64 microseconds)
 
const char * ppl6::UTC2Date (ppluint64 sec, char *datum, char *uhrzeit)
 Wandelt Unixtime in einen String um. Mehr ...
 
int ppl6::zeit (char *str1)
 
ppldd ppl6::zeit2long (char *zeitstr)
 

Dokumentation der Funktionen

ppldd ppl6::dat2long ( pplchar *  dat)
ppluint64 ppl6::Datum2Sekunden ( char *  datum,
char *  zeit 
)
void ppl6::datumsauswertung ( pplchar *  d,
pplchar *  dat 
)
double ppl6::getmicrotime ( )
double ppl6::GetMicrotime ( )
ppluint64 ppl6::GetMilliSeconds ( )
Beschreibung:
Diese Funktion liefert die Anzahl Millisekunden, die seit dem 1.1.1970 0 Uhr vergangen sind. (1000 Millisekunden = 1 Sekunde).
Rückgabe
Anzahl Millisekunden seit 1970.
ppluint64 ppl6::GetTime ( PPLTIME t)

Liefert die aktuelle Unix-Zeit als Return-Wert zurück, sowie aufgeschlüsselt in der Struktur PPLTIME.

Parameter
tist ein Pointer auf eine Struktur vom Typ PPLTIME oder NULL.
Rückgabe
Bei Erfolg wird die Zeit seit 1.1.1970, 00:00 Uhr in Sekunden zurückgegeben, sowie die Struktur PPLTIME gefüllt, sofert der Parameter t nicht NULL ist. Tritt ein Fehler auf, wird ((ppluint64)-1) zurückgegeben und errno entsprechend gesetzt.
Siehe auch
ppl6::GetTime()
ppl6::GetTime(PPLTIME *t, ppluint64 now)
ppluint64 ppl6::GetTime ( PPLTIME t)

Liefert die aktuelle Unix-Zeit als Return-Wert zurück, sowie aufgeschlüsselt in der Struktur PPLTIME.

Parameter
tReferenz aif eine Struktur vom Typ PPLTIME.
Rückgabe
Bei Erfolg wird die Zeit seit 1.1.1970, 00:00 Uhr in Sekunden zurückgegeben, sowie die Struktur PPLTIME gefüllt. Tritt ein Fehler auf, wird ((ppluint64)-1) zurückgegeben und errno entsprechend gesetzt.
ppluint64 ppl6::GetTime ( PPLTIME t,
ppluint64  now 
)

Wandelt die angegebene Unix-Zeit in eine Struktur vom Typ PPLTIME um.

Parameter
tist ein Pointer auf eine Struktur vom Typ PPLTIME oder NULL.
nowenthält die Sekunden seit 1970, die in die PPLTIME-Struktur umgewandelt werden sollen.
Rückgabe
Bei Erfolg werden die über den Parameter now angegebenen Sekunden zurückgeliefert und die Struktur PPLTIME wird gefüllt, Bei Auftreten eines Fehlers wird 0 zurückgegeben.
Siehe auch
ppl6::GetTime()
ppl6::GetTime(PPLTIME *t)
ppluint64 ppl6::GetTime ( PPLTIME t,
ppluint64  now 
)

Wandelt die angegebene Unix-Zeit in eine Struktur vom Typ PPLTIME um.

Parameter
tReferenz auf Eine PPLTIME-Struktur
nowenthält die Sekunden seit 1970, die in die PPLTIME-Struktur umgewandelt werden sollen.
Rückgabe
Bei Erfolg werden die über den Parameter now angegebenen Sekunden zurückgeliefert und die Struktur PPLTIME wird gefüllt, Bei Auftreten eines Fehlers wird 0 zurückgegeben.
Siehe auch
ppl6::GetTime()
ppl6::GetTime(PPLTIME *t)
ppluint64 ppl6::GetTime ( )
Rückgabe
Bei Erfolg wird die Zeit seit 1.1.1970, 00:00 Uhr in Sekunden zurückgegeben. Tritt ein Fehler auf, wird ((ppluint64)-1) zurückgegeben und errno entsprechend gesetzt.
Siehe auch
ppl6::GetTime(PPLTIME *t)
ppl6::GetTime(PPLTIME *t, ppluint64 now)
ppluint64 ppl6::GetUTC ( char *  datum,
char *  zeit 
)
void ppl6::long2dat ( pplchar *  datstr,
ppluint32  dat 
)
void ppl6::long2zeit ( char *  zeitstr,
ppldd  z 
)
ppldd ppl6::longdatum ( )
ppldd ppl6::longzeit ( )
const char * ppl6::MkDate ( CString &  buffer,
const char *  format,
ppluint64  sec 
)
Include:
#include <ppl6.h>
Beschreibung:
Die Funktion MkDate wandelt einen Unix-Timestamp in einen String um.
Parameter
buffer
formatist ein beliebiger String, der verschiedene Platzhalter entahlten darf (siehe unten)
sec
Syntax-Formatstring

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.

CString ppl6::MkDate ( const char *  format,
ppluint64  sec 
)
Include:
#include <ppl6.h>
Beschreibung:
Die Funktion MkDate wandelt einen Unix-Timestamp in einen String um.
Parameter
formatist ein beliebiger String, der verschiedene Platzhalter entahlten darf (siehe unten)
sec
Rückgabe
Bei Erfolg gibt die Funktion einen neuen String mit dem formatierten Zeitpunkt zurück, im Fehlerfall einen leeren String.
Syntax-Formatstring

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.

char * ppl6::MkDate ( char *  buffer,
int  size,
const char *  format,
ppluint64  sec 
)
Include:
#include <ppl6.h>
Beschreibung:
Die Funktion MkDate wandelt einen Unix-Timestamp in einen String um.
Parameter
buffer
size
formatist ein beliebiger String, der verschiedene Platzhalter entahlten darf (siehe unten)
sec
Syntax-Formatstring

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.

const char * ppl6::MkISO8601Date ( CString &  buffer,
ppluint64  sec 
)
const char * ppl6::MkISO8601Date ( CString &  buffer,
PPLTIME t 
)
char * ppl6::MkISO8601Date ( char *  buffer,
size_t  size,
ppluint64  sec 
)
char * ppl6::MkISO8601Date ( char *  buffer,
size_t  size,
PPLTIME t 
)
CString ppl6::MkISO8601Date ( ppluint64  sec)
CString ppl6::MkISO8601Date ( PPLTIME t)
CString ppl6::MkRFC822Date ( PPLTIME t)
Beschreibung:
Mit dieser Funktion wird ein Datummstring nach RFC-822 erzeugt, wie er im Header einer Email verwendet wird. Das Format lautet:
weekday, day month year time zone
und hat folgende Bedeutung:
  • weekday: Name des Wochentags ("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat")
  • day: Tag des Monats mit ein oder zwei Ziffern
  • month: Name des Monats ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
  • year: Das Jahr mit 4 Ziffern
  • time: Stunde:Minute:Sekunde (hh:mm:ss), jeweils mit zwei Ziffern und Doppelpunkt getrennt
  • zone: Offset zu UTC in Stunden und Minuten (+|-HHMM)
Parameter
[in]tEine PPLTIME-Struktur, der die Datumsinformationen entnommen werden
Ausnahmebehandlung
Exception::FunctionFailedDie Funktion wirft eine Exception, wenn die Datumsinformation in der PPLTIME-Struktur ungültig ist.
CString ppl6::MkRFC822Date ( ppluint64  sec)
Beschreibung:
Mit dieser Funktion wird ein Datummstring nach RFC-822 erzeugt, wie er im Header einer Email verwendet wird. Das Format lautet:
weekday, day month year time zone
und hat folgende Bedeutung:
  • weekday: Name des Wochentags ("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat")
  • day: Tag des Monats mit ein oder zwei Ziffern
  • month: Name des Monats ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
  • year: Das Jahr mit 4 Ziffern
  • time: Stunde:Minute:Sekunde (hh:mm:ss), jeweils mit zwei Ziffern und Doppelpunkt getrennt
  • zone: Offset zu UTC in Stunden und Minuten (+|-HHMM)
Parameter
[in]secEin Optionaler Parameter mit Sekunden seit 1970. Ist er 0 oder wird nicht angegeben, wird die aktuelle Zeit verwendet.
Ausnahmebehandlung
Exception::FunctionFailedDie Funktion wirft eine Exception, wenn die Datumsinformation in der PPLTIME-Struktur ungültig ist.
ppluint64 ppl6::MkTime ( CString *  year,
CString *  month,
CString *  day,
CString *  hour,
CString *  min,
CString *  sec 
)
ppluint64 ppl6::MkTime ( const CString &  year,
const CString &  month,
const CString &  day,
const CString &  hour,
const CString &  min,
const CString &  sec 
)
ppluint64 ppl6::MkTime ( const char *  year,
const char *  month,
const char *  day,
const char *  hour,
const char *  min,
const char *  sec 
)
ppluint64 ppl6::MkTime ( int  year,
int  month,
int  day,
int  hour,
int  min,
int  sec 
)
ppluint64 ppl6::MkTime ( const char *  iso8601date,
PPLTIME t 
)
ppluint64 ppl6::MkTime ( CString *  iso8601date,
PPLTIME t 
)
int ppl6::MSleep ( ppluint64  milliseconds)
ppldd ppl6::sec2long ( ppldd  z)
ppldd ppl6::Sekunden2Datum ( time_t  sec,
ppldd *  datum,
ppldd *  uhrzeit 
)
int ppl6::SSleep ( ppluint64  seconds)
int ppl6::usdatum ( char *  str1)
int ppl6::USleep ( ppluint64  microseconds)
const char * ppl6::UTC2Date ( ppluint64  sec,
char *  datum,
char *  uhrzeit 
)

Die angegebene Unixtime wird in einen String gewandelt und das Ergebnis getrennt in Datum und Uhrzeit zurückgegeben

Parameter
secDie Unixtime (Sekunden seit 1970)
datumEin Pointer auf einen String, der groß genug sein muß, um ein Datum aufzunehmen (11 Byte), oder NULL
uhrzeitEin Pointer auf einen String, der groß genug sein muß, um eine Uhrzeit aufzunehmen (9 Byte), oder NULL
Rückgabe
Sofern die Parameter nicht NULL sind, wird das Ergebnis in datum und uhrzeit gespeichert. Das Format dabei ist:
  • Datum: dd.mm.yyyy (Tag.Monat.Jahr)
  • Uhrzeit; hh:mm:ss (Stunden:Minuten:Sekunden)

Ferner wird ein Pointer auf einen String zurückgeliefert, der nur das Datum enthält

Warnung
Wenn der Parameter datum NULL ist, wird für den Rückgabewert ein statischer Buffer verwendet, der nicht nicht Threadsafe ist!
Zu beachten
Mit der Funktion ppl6::MkTime kann ein Datumsstring im beliebigen Format erzeugt werden.
Siehe auch
ppl6::MkTime
int ppl6::zeit ( char *  str1)
ppldd ppl6::zeit2long ( char *  zeitstr)