【发布时间】:2018-02-24 16:36:51
【问题描述】:
当我向时间 API 发出请求以获取莫斯科时间时,变量中的 int 为空。
代码如下:
QNetworkReply* reply = manager->get(QNetworkRequest(QUrl("https://yandex.com/time/sync.json?geo=213")));
QEventLoop loop;
connect(reply, &QNetworkReply::finished, &loop, &QEventLoop::quit);
loop.exec();
QByteArray data = reply->readAll();
QJsonDocument document = QJsonDocument::fromJson(data);
QJsonObject root = document.object();
qDebug() << data;
qDebug() << root.value("time").toInt();
这是 JSON:
{"time":1519489796585,"clocks":{"213":{"id":213,"name":"Moscow","offset":10800000,"offsetString":"UTC+3:00","showSunriseSunset":true,"sunrise":"07:33","sunset":"17:53","isNight":true,"skyColor":"#3f68b2","weather":{"temp":-10,"icon":"ovc","link":"/moscow"},"parents":[{"id":225,"name":"Russia"}]}}}
【问题讨论】:
-
time是自纪元 (1970-01-01) 以来msec的数量。在所有情况下,您都需要将其转换为QdateTime。
标签: c++ qt qt5 qjson qjsonobject