class EE::System::DateTimeFormatter

Overview

#include <datetimeformat.hpp>

class DateTimeFormatter {
public:
    // methods

    static FormattedDateTime formatDateDetailed(const CalendarDate& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static FormattedDateTime formatTimeDetailed(const TimeOfDay& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static FormattedDateTime formatDateTimeDetailed(const LocalDateTime& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::string formatDate(const CalendarDate& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::string formatTime(const TimeOfDay& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::string formatDateTime(const LocalDateTime& value, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<CalendarDate> parseDate(std::string_view text, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<TimeOfDay> parseTime(std::string_view text, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<LocalDateTime> parseDateTime(std::string_view text, const DateTimeFormat& format, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<CalendarDate> parseDateTolerant(std::string_view text, const DateTimeFormat& displayFormat, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<TimeOfDay> parseTimeTolerant(std::string_view text, const DateTimeFormat& displayFormat, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::optional<LocalDateTime> parseDateTimeTolerant(std::string_view text, const DateTimeFormat& displayFormat, const DateTimeLocale& locale = DateTimeLocale::system());
    static std::string toISODate(const CalendarDate& value);
    static std::string toISOTime(const TimeOfDay& value, bool includeMilliseconds = false);
    static std::string toISOLocalDateTime(const LocalDateTime& value, bool includeMilliseconds = false);
};

Detailed Documentation

Methods

static std::optional<CalendarDate> parseDateTolerant(std::string_view text, const DateTimeFormat& displayFormat, const DateTimeLocale& locale = DateTimeLocale::system())

Parsing intended for paste/replacement. ISO is always accepted, then the display format and separator-tolerant numeric forms are attempted.