Nat*_*ate 20
使用posix_time从系统时钟构造时间对象.
例如,这会将当前系统时间输出为ISO格式字符串:
namespace pt = boost::posix_time;
pt::to_iso_string(pt::second_clock::local_time());
Run Code Online (Sandbox Code Playgroud)
有关格式化替代方法,请参阅上面链接的参考的"转换为字符串"部分和日期时间输入/输出参考.或者,您可以使用访问器函数构建自己的输出字符串.例如,要获得美式日期:
namespace pt = boost::posix_time;
pt::ptime now = pt::second_clock::local_time();
std::stringstream ss;
ss << static_cast<int>(now.date().month()) << "/" << now.date().day()
<< "/" << now.date().year();
std::cout << ss.str() << std::endl;
Run Code Online (Sandbox Code Playgroud)
请注意,月份将被转换为,int因此它将显示为数字.默认输出facet将其显示为三个字母的月缩写(March的"Mar").