DateTimeFormatter
DateTimeFormatter
#include <icy/datetime.h>class DateTimeFormatterDefined in src/base/include/icy/datetime.h:1142
This class converts dates and times into strings, supporting a variety of standard and custom formats.
There are two kind of static member functions:
format* functions return a std::string containin the formatted value.
append* functions append the formatted value to an existing string.
List of all members
| Name | Kind | Owner |
|---|---|---|
format | function | Declared here |
format | function | Declared here |
format | function | Declared here |
format | function | Declared here |
append | function | Declared here |
append | function | Declared here |
append | function | Declared here |
append | function | Declared here |
tzdISO | function | Declared here |
tzdRFC | function | Declared here |
tzdISO | function | Declared here |
tzdRFC | function | Declared here |
Public Static Methods
| Return | Name | Description |
|---|---|---|
std::string | format static inline | Formats the given timestamp according to the given format. The format string is used as a template to format the date and is copied character by character except for the following special characters, which are replaced by the corresponding value. |
std::string | format static inline | Formats the given date and time according to the given format. See format(const Timestamp&, std::string_view, int) for more information. |
std::string | format static inline | Formats the given local date and time according to the given format. See format(const Timestamp&, std::string_view, int) for more information. |
std::string | format static inline | Formats the given timespan according to the given format. The format string is used as a template to format the date and is copied character by character except for the following special characters, which are replaced by the corresponding value. |
void | append static inline | Formats the given timestamp according to the given format and appends it to str. |
void | append static | Formats the given date and time according to the given format and appends it to str. |
void | append static | Formats the given local date and time according to the given format and appends it to str. |
void | append static | Formats the given timespan according to the given format and appends it to str. |
std::string | tzdISO static inline | Formats the given timezone differential in ISO format. If timeZoneDifferential is UTC, "Z" is returned, otherwise, +HH.MM (or -HH.MM) is returned. |
std::string | tzdRFC static inline | Formats the given timezone differential in RFC format. If timeZoneDifferential is UTC, "GMT" is returned, otherwise ++HHMM (or -HHMM) is returned. |
void | tzdISO static | Formats the given timezone differential in ISO format and appends it to the given string. If timeZoneDifferential is UTC, "Z" is returned, otherwise, +HH.MM (or -HH.MM) is returned. |
void | tzdRFC static | Formats the given timezone differential in RFC format and appends it to the given string. If timeZoneDifferential is UTC, "GMT" is returned, otherwise ++HHMM (or -HHMM) is returned. |
format
static inline
static inline std::string format(const Timestamp & timestamp, std::string_view fmt, int timeZoneDifferential = UTC)Defined in src/base/include/icy/datetime.h:1183
Formats the given timestamp according to the given format. The format string is used as a template to format the date and is copied character by character except for the following special characters, which are replaced by the corresponding value.
w - abbreviated weekday (Mon, Tue, ...)
W - full weekday (Monday, Tuesday, ...)
b - abbreviated month (Jan, Feb, ...)
B - full month (January, February, ...)
d - zero-padded day of month (01 .. 31)
e - day of month (1 .. 31)
f - space-padded day of month ( 1 .. 31)
m - zero-padded month (01 .. 12)
n - month (1 .. 12)
o - space-padded month ( 1 .. 12)
y - year without century (70)
Y - year with century (1970)
H - hour (00 .. 23)
h - hour (00 .. 12)
a - am/pm
A - AM/PM
M - minute (00 .. 59)
S - second (00 .. 59)
s - seconds and microseconds (equivalent to S.F)
i - millisecond (000 .. 999)
c - centisecond (0 .. 9)
F - fractional seconds/microseconds (000000 - 999999)
z - time zone differential in ISO 8601 format (Z or +NN.NN)
Z - time zone differential in RFC format (GMT or +NNNN)
%% - percent sign
Class DateTimeFormat defines format strings for various standard date/time formats.
format
static inline
static inline std::string format(const DateTime & dateTime, std::string_view fmt, int timeZoneDifferential = UTC)Defined in src/base/include/icy/datetime.h:1190
Formats the given date and time according to the given format. See format(const Timestamp&, std::string_view, int) for more information.
format
static inline
static inline std::string format(const LocalDateTime & dateTime, std::string_view fmt)Defined in src/base/include/icy/datetime.h:1196
Formats the given local date and time according to the given format. See format(const Timestamp&, std::string_view, int) for more information.
format
static inline
static inline std::string format(const Timespan & timespan, std::string_view fmt = "%dd %H:%M:%S.%i")Defined in src/base/include/icy/datetime.h:1215
Formats the given timespan according to the given format. The format string is used as a template to format the date and is copied character by character except for the following special characters, which are replaced by the corresponding value.
d - days
H - hours (00 .. 23)
h - total hours (0 .. n)
M - minutes (00 .. 59)
m - total minutes (0 .. n)
S - seconds (00 .. 59)
s - total seconds (0 .. n)
i - milliseconds (000 .. 999)
c - centisecond (0 .. 9)
F - fractional seconds/microseconds (000000 - 999999)
%% - percent sign
append
static inline
static inline void append(std::string & str, const Timestamp & timestamp, std::string_view fmt, int timeZoneDifferential = UTC)Defined in src/base/include/icy/datetime.h:1222
Formats the given timestamp according to the given format and appends it to str.
See format() for documentation of the formatting string.
append
static
static void append(std::string & str, const DateTime & dateTime, std::string_view fmt, int timeZoneDifferential = UTC)Defined in src/base/include/icy/datetime.h:1229
Formats the given date and time according to the given format and appends it to str.
See format() for documentation of the formatting string.
append
static
static void append(std::string & str, const LocalDateTime & dateTime, std::string_view fmt)Defined in src/base/include/icy/datetime.h:1236
Formats the given local date and time according to the given format and appends it to str.
See format() for documentation of the formatting string.
append
static
static void append(std::string & str, const Timespan & timespan, std::string_view fmt = "%dd %H:%M:%S.%i")Defined in src/base/include/icy/datetime.h:1243
Formats the given timespan according to the given format and appends it to str.
See format() for documentation of the formatting string.
tzdISO
static inline
static inline std::string tzdISO(int timeZoneDifferential)Defined in src/base/include/icy/datetime.h:1249
Formats the given timezone differential in ISO format. If timeZoneDifferential is UTC, "Z" is returned, otherwise, +HH.MM (or -HH.MM) is returned.
tzdRFC
static inline
static inline std::string tzdRFC(int timeZoneDifferential)Defined in src/base/include/icy/datetime.h:1254
Formats the given timezone differential in RFC format. If timeZoneDifferential is UTC, "GMT" is returned, otherwise ++HHMM (or -HHMM) is returned.
tzdISO
static
static void tzdISO(std::string & str, int timeZoneDifferential)Defined in src/base/include/icy/datetime.h:1260
Formats the given timezone differential in ISO format and appends it to the given string. If timeZoneDifferential is UTC, "Z" is returned, otherwise, +HH.MM (or -HH.MM) is returned.
tzdRFC
static
static void tzdRFC(std::string & str, int timeZoneDifferential)Defined in src/base/include/icy/datetime.h:1266
Formats the given timezone differential in RFC format and appends it to the given string. If timeZoneDifferential is UTC, "GMT" is returned, otherwise ++HHMM (or -HHMM) is returned.
Public Types
| Name | Description |
|---|---|
| `` |
enum Defined in src/base/include/icy/datetime.h:1145
| Value | Description |
|---|---|
UTC | Special value for timeZoneDifferential denoting UTC. |
