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

	  If  a	 std::time_get specialization is not guaranteed	to be provided
       by the standard
	  library (see below), the behaviors of	its member  functions  (except
       the constructor
	  and destructor) are not guaranteed as	specified.

Specializations
	  The standard library is guaranteed to	provide	the following special-
       izations	(they
	  are required to be implemented by any	locale object):

	  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

	  In  addition,	 the  standard	library	 is also guaranteed to provide
       every specialization
	  that satisfies the following type requirements:

	    * CharT is one of char and wchar_t,	and
	    * InputIt must meet	the requirements of LegacyInputIterator.

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  extracts 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 <iomanip>
	#include <iostream>
	#include <locale>
	#include <sstream>

	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 std::tm for  output  as	character  se-
       quence
		   (class template)
	  get_time parses a date/time value of specified format
	  (C++11)  (function template)

http://cppreference.com		  2024.06.10		      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.1.quarterly>

home | help