我正在从大纪元到正确的日期和时间进行转换。到目前为止,我发现boost库可以帮助我解决这个问题。但是,我收到错误没有合适的转换函数从“const std :: string”到“time_t”存在
const std::string timeparser(jsonData["data"]["table"][i]["data"]["created_utc"].asString());
timeparser可能包含“1522516475”
std::time_t btime_ = timeparser;
std::cout << boost::posix_time::from_time_t(btime_) << endl;
std::cout.imbue(std::locale(std::cout.getloc(), new boost::posix_time::time_facet("%H:%M:%S")));
std::cout << boost::posix_time::from_time_t(btime_) << endl;
答案 0 :(得分:1)
这不起作用:
std::time_t btime_ = timeparser;
因为左手型是数字,右手是字符串。你需要转换:
std::time_t btime_ = std::stoi(timeparser);