absl::ParseTime

ParseTime overloads

Synopses

Declared in <absl/time/time.h>

Parses an input string according to the provided format string and returns the corresponding absl::Time. Uses strftime()-like formatting options, with the same extensions as FormatTime(), but with the exceptions that %E#S is interpreted as %ES, and %E#f as %Ef. %Ez and %E*z also accept the same inputs, which (along with %z) includes 'z' and 'Z' as synonyms for +00:00. %ET accepts either 'T' or 't'.

bool
ParseTime(
    std::string_view format,
    std::string_view input,
    Time* time,
    std::string* err);
» more...

Like ParseTime() above, but if the format string does not contain a UTC offset specification (%z/%Ez/%E*z) then the input is interpreted in the given TimeZone. This means that the input, by itself, does not identify a unique instant. Being time-zone dependent, it also admits the possibility of ambiguity or non-existence, in which case the "pre" time (as defined by TimeZone::TimeInfo) is returned. For these reasons we recommend that all date/time strings include a UTC offset so they're context independent.

bool
ParseTime(
    std::string_view format,
    std::string_view input,
    TimeZone tz,
    Time* time,
    std::string* err);
» more...

Return Value

true upon successful parsing.

Parameters

NameDescription
formatThe strftime()-like format string.
inputThe string to parse.
timeOutput parameter receiving the parsed time.
errOutput parameter receiving an error message on failure.
tzThe time zone to interpret the input in when no offset is present.