| std::time_get(3) | C++ Standard Libary | std::time_get(3) | 
NAME¶
std::time_get - std::time_get
Synopsis¶
 Defined in header <locale>
  
   template<
  
   class CharT,
  
   class InputIt = std::istreambuf_iterator<CharT>
  
   > class time_get;
  
   Class template std::time_get encapsulates date and time parsing rules. The
    I/O
  
   manipulator std::get_time uses the std::time_get facet of the I/O stream's
    locale to
  
   convert text input to a std::tm object.
  
   std-time get-inheritance.svg
  
   Inheritance diagram
Type requirements¶
 -
  
   InputIt must meet the requirements of LegacyInputIterator.
Specializations¶
 Two standalone (locale-independent) full specializations and two
    partial
  
   specializations are provided by the standard library:
  
   Defined in header <locale>
  
   std::time_get<char> parses narrow string representations of date and
  
   time
  
   std::time_get<wchar_t> parses wide string representations of date and
    time
  
   std::time_get<char, InputIt> parses narrow string representations of
    date and
  
   time using custom input iterator
  
   std::time_get<wchar_t, InputIt> parses wide string representations of
    date and time
  
   using custom input iterator
  
   In addition, every locale object constructed in a C++ program implements its
    own
  
   (locale-specific) versions of these specializations.
Member types¶
 Member type Definition
  
   char_type CharT
  
   iter_type InputIt
Member functions¶
 constructor constructs a new time_get facet
  
   (public member function)
  
   destructor destructs a time_get facet
  
   (protected member function)
  
   date_order invokes do_date_order
  
   (public member function)
  
   get_time invokes do_get_time
  
   (public member function)
  
   get_date invokes do_get_date
  
   (public member function)
  
   get_weekday invokes do_get_weekday
  
   (public member function)
  
   get_monthname invokes do_get_monthname
  
   (public member function)
  
   get_year invokes do_get_year
  
   (public member function)
  
   get invokes do_get
  
   (C++11) (public member function)
Member objects¶
 static std::locale::id id id of the locale
  
   (public member object)
Protected member functions¶
 do_date_order obtains preferred ordering of day, month, and year
  
   [virtual] (virtual protected member function)
  
   do_get_time extracts hours, minutes, and seconds from input stream
  
   [virtual] (virtual protected member function)
  
   do_get_date extracts month, day, and year from input stream
  
   [virtual] (virtual protected member function)
  
   do_get_weekday extracts the name of a day of the week from input stream
  
   [virtual] (virtual protected member function)
  
   do_get_monthname extacts a month name from input stream
  
   [virtual] (virtual protected member function)
  
   do_get_year extracts a year from input stream
  
   [virtual] (virtual protected member function)
  
   do_get extracts date/time components from input stream, according to the
  
   [virtual] (C++11) specified format
  
   (virtual protected member function)
Inherited from std::time_base
  
   Type Definition
  
   dateorder date order enumeration type, defining the values no_order, dmy,
    mdy, ymd,
  
   and ydm
Example¶
 note: choose clang to observe the output. libstdc++ does not
    correctly implement the
  
   %b specifier: bug 78714
// Run this code
  
   #include <iostream>
  
   #include <sstream>
  
   #include <locale>
  
   #include <iomanip>
  
   int main()
  
   {
  
   std::tm t = {};
  
   std::istringstream ss("2011-Februar-18 23:12:34");
  
   ss.imbue(std::locale("de_DE.utf-8"));
  
   ss >> std::get_time(&t, "%Y-%b-%d %H:%M:%S");
  
   if (ss.fail()) {
  
   std::cout << "Parse failed\n";
  
   } else {
  
   std::cout << std::put_time(&t, "%c") << '\n';
  
   }
  
   }
Possible output:¶
Sun Feb 18 23:12:34 2011
See also¶
 time_put formats contents of struct std::tm for output as
    character sequence
  
   (class template)
  
   get_time parses a date/time value of specified format
  
   (C++11) (function template)
| 2022.07.31 | http://cppreference.com |