std::time_get
来自cppreference.com
                    
                                        
                    
                    
                                                            
                    |   定义于头文件  <locale>
  | 
||
|   template<      class CharT,   | 
||
类模板 std::time_get 封装日期和时间分析规则。 I/O 操纵符 std::get_time 用 I/O 流的 locale 的 std::time_get 平面转换文本输入为 std::tm 对象。
继承图
类型要求
 -InputIt 必须满足遗留输入迭代器 (LegacyInputIterator)  的要求。
 | 
特化
标准库提供二个孤立(独立于本地环境的)全特化和二个部分特化:
|   定义于头文件  
<locale>  | |
| std::time_get<char> | 分析日期和时间的窄字符串表示 | 
| std::time_get<wchar_t> | 分析日期和时间的宽字符串表示 | 
| std::time_get<char, InputIt> | 用定制输入迭代器分析日期和时间的窄字符串表示 | 
| std::time_get<wchar_t, InputIt> | 用定制输入迭代器分析日期和时间的宽字符串表示 | 
另外, C++ 程序中构造的每个 locale 对象都实装这些特化的其自身(本地环境限定)版本。
成员类型
| 成员类型 | 定义 | 
  char_type
 | 
  CharT
 | 
  iter_type
 | 
  InputIt
 | 
成员函数
|   构造新的 time_get 平面  (公开成员函数)  | |
|   销毁 time_get 平面  (受保护成员函数)  | |
  调用 do_date_order  (公开成员函数)  | |
  调用 do_get_time (公开成员函数)  | |
  调用 do_get_date (公开成员函数)  | |
  调用 do_get_weekday (公开成员函数)  | |
  调用 do_get_monthname (公开成员函数)  | |
  调用 do_get_year  (公开成员函数)  | |
|    (C++11)  | 
  调用 do_get  (公开成员函数)  | 
成员对象
|    static std::locale::id id  | 
  locale 的 id  (公开成员对象)  | 
受保护成员函数
|   获得偏好的日、月、年顺序  (虚受保护成员函数)  | |
|    [虚]  | 
  从输入流释出时、分、秒  (虚受保护成员函数)  | 
|    [虚]  | 
  从输入流输出月、日以及年  (虚受保护成员函数)  | 
|   从输入流释出星期的日名  (虚受保护成员函数)  | |
|   从输入流释出月名  (虚受保护成员函数)  | |
|    [虚]  | 
  从输入流释出年份  (虚受保护成员函数)  | 
|    [虚] (C++11)  | 
  从输入流释出日期/时间组分,按照指定格式  (虚受保护成员函数)  | 
继承自 std::time_base
| 类型 | 定义 | 
  dateorder
 | 
 日期顺序枚举类型,定义值 no_order 、 dmy 、 mdy 、 ymd 及 ydm
 | 
示例
注意:选择 clang 观察输出。 libstdc++ 当前未实现 %b 说明符:漏洞 78714
运行此代码
#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'; } }
可能的输出:
Sun Feb 18 23:12:34 2011
参阅
|   格式化 std::tm 内容为字符序列以输出  (类模板)  | |
|    (C++11)  | 
  剖析指定格式的日期/时间值  (函数模板)  |