c++ - 创建使用当前日期和时间编码的 Json 对象
问题描述
我对 Json 真的很陌生。我尝试这样做,以便可以打印当前日期和时间,但没有工作。
using json = nlohmann::json;
json j;
j["chrono"]={ctime}
std::cout<<j.dump()<<std::endl;
解决方案
JSON 没有特殊的时间数据类型,但事实上的标准(也被 Javascript 使用)是使用 ISO 8601 字符串在 JSON 文档中存储日期。
所以你真正的问题是“如何将当前时间格式化为 ISO 8601”。在这里使用答案:
https://stackoverflow.com/a/9528166/1863938
time_t now;
time(&now);
char buf[sizeof "2011-10-08T07:07:09Z"];
strftime(buf, sizeof buf, "%FT%TZ", gmtime(&now));
然后,您可以轻松地调整您的代码:
json j;
j["chrono"]={buf}
std::cout<<j.dump()<<std::endl;
推荐阅读
- c# - 当我想简单地新建一个元素或使用 XAML 创建它时,它们是否可以克服 DI 的限制,我需要构造函数参数?
- apache-poi - 2021年Word文档生成情况如何?(语言不可知论者)
- java - 在为传感器实现循环时遇到问题
- pdf - 下推使用 pdfjam 调整大小的 pdf
- python - 在 pandas.DataFrame.groupby 函数中,我们可以同时设置参数“by=ndarray”和“level”吗?
- c - 为什么我的默认 case 语句在允许我进行 scanf 之前重复了两次?
- python - 如何在python(django)中存储计数值?
- r - 如何从 GLODAP 在 R 工作室(版本 4.0.3)中打开文件?
- python - 似乎无法安装 python 包
- python - 将字符串聚类到相似组中