c++ - 使用 date.h 将纪元转换为 UTC 日期格式
问题描述
一个非常简单的问题。我一直在使用 date.h 从完整的日期戳中获取以毫秒和纳秒为单位的纪元。
istringstream temp_ss1{timestamp1};
sys_time<nanoseconds> tp1;
temp_ss1 >> parse("%Y/%m/%d,%T", tp1);
std::cout << tp1.time_since_epoch().count() << "ns\n";
从毫秒纪元到毫秒的完整日期戳的方法是什么?
非常感谢您的帮助 !
解决方案
如果您对格式不挑剔,则可以流式传输sys_time<milliseconds>
。如果您想控制格式,可以使用date::format
这些格式标志。例如:
std::cout << format("%Y/%m/%d,%T", tp1) << '\n';
输出的精度将与time_point
.
有没有转换的方法。“long epoch = 1609330278454”是否有一个需要很长时间并打印日期的功能?
#include "date/date.h"
#include <iostream>
int
main()
{
using namespace date;
using namespace std;
using namespace std::chrono;
long epoch = 1609330278454;
cout << sys_time<milliseconds>{milliseconds{epoch}} << '\n';
}
输出:
2020-12-30 12:11:18.454
您可以像这样自定义格式:
long epoch = 1609330278454;
sys_time<milliseconds> tp{milliseconds{epoch}};
cout << format("%Y/%m/%d,%T", tp) << '\n';
输出:
2020/12/30,12:11:18.454
推荐阅读
- angular - 何时何地调用 updateValueAndValidity?
- android - 为什么它给我一个错误参数不能为空?
- algorithm - 最佳对齐的字符串相似度
- .net - 并非所有消息都从 Azure 服务总线队列中窥视
- swift - 如何在 Swift 中读取字符串格式的字符串字符?
- python - 能够在 PyCharm 上运行 Django 服务器,但不能在命令行上运行?
- ruby-on-rails - 在 Rails 控制器中循环 Ajax 数据
- typescript - 打字稿:为类减速器功能键入组合器
- python - 有没有办法同时运行两个循环(for循环,while循环,....)?
- swift - 为什么我的格子链接集成没有打开链接 UI