我需要根据rfc3339获取时区偏移的时间。 目前我有:
#include <iostream>
#include <ctime>
#include <iomanip>
int main(int argc, char **argv)
{
auto t = std::time(nullptr);
auto tm = *std::localtime(&t);
std::ostringstream oss;
oss << std::put_time(&tm, "%Y-%m-%dT%H-%M-%S%z");
std::cout << oss.str() << std::endl;
return 0;
}
但是结果有一个小问题,时间是:
2019-01-10T10-19-31 + 0100
但应该是:
2019-01-10T10-19-31 + 01:00
我检查了文档:
https://en.cppreference.com/w/cpp/io/manip/put_time
似乎没有办法在时间偏移中指定冒号。
有没有办法用c ++ 11 std :: put_time或其他c ++ stl提供的东西