代码之家  ›  专栏  ›  技术社区  ›  Ylisar

使用boost::date\u time库格式化时间(毫秒)

  •  6
  • Ylisar  · 技术社区  · 16 年前

    我有一个以毫秒为单位的持续时间,理想情况下我希望使用boost::date\u time库中的格式化功能来格式化它。但是,在创建boost::posix\u time::time\u duration之后,我似乎找不到一种方法来实际应用格式化字符串。

    1 回复  |  直到 16 年前
        1
  •  10
  •   Eddy Pronk    16 年前

    您需要先将持续时间添加到时间对象,然后按如下方式输出:

    boost::posix_time::time_facet* facet = new boost::posix_time::time_facet("%Y%m%d %H:%M:%S.%f");
    std::stringstream date_stream;
    date_stream.imbue(std::locale(date_stream.getloc(), facet));
    date_stream << boost::posix_time::microsec_clock::universal_time();
    

    输出:

    20100326 12:02:08.024820

    用boost 1.41测试