C++时间戳的转换与格式化方法

   2024-10-01 4280
核心提示:在C++中,可以使用std::chrono库来处理时间戳的转换和格式化。以下是一个简单的示例,演示如何将时间戳转换为特定格式的日期时间

在C++中,可以使用std::chrono库来处理时间戳的转换和格式化。以下是一个简单的示例,演示如何将时间戳转换为特定格式的日期时间字符串:

#include <iostream>#include <chrono>#include <ctime>#include <iomanip>int main() {    // 获取当前时间戳    auto now = std::chrono::system_clock::now();    auto now_ms = std::chrono::time_point_cast<std::chrono::milliseconds>(now);    auto epoch = now_ms.time_since_epoch();    auto value = std::chrono::duration_cast<std::chrono::milliseconds>(epoch);    // 转换为时间_t类型    std::time_t tt = std::chrono::system_clock::to_time_t(now);    std::tm tm = *std::localtime(&tt);    // 格式化日期时间字符串    std::ostringstream oss;    oss << std::put_time(&tm, "%Y-%m-%d %H:%M:%S");    std::string datetime_str = oss.str();    std::cout << "当前时间戳:" << value.count() << std::endl;    std::cout << "当前时间日期:" << datetime_str << std::endl;    return 0;}

在上面的示例中,首先获取当前时间戳,并将其转换为time_t类型。然后使用std::put_time函数将tm结构体格式化为特定的日期时间字符串,并输出到控制台。

需要注意的是,std::put_time函数需要C++11或更高版本支持。如果你的编译器不支持该函数,你可以使用其他方法来格式化日期时间字符串,比如使用std::strftime函数。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号