Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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	imple-
       ments 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 cor-
       rectly 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)

http://cppreference.com		  2022.07.31		      std::time_get(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::time_get&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help