使用QjsonDocument解析QT中的api数据

时间:2015-06-25 22:25:56

标签: c++ json qt parsing qjson

我有以下JSON,我试图解析。

{
    "btc_usd": {
        "high": 245.304,
        "low": 240.10001,
        "avg": 242.702005,
        "vol": 1406884.29972,
        "vol_cur": 5776.14075,
        "last": 242.9,
        "buy": 243.022,
        "sell": 242.9,
        "updated": 1435270412
    },
    "btc_rur": {
        "high": 13150,
        "low": 12912,
        "avg": 13031,
        "vol": 5397157.58979,
        "vol_cur": 413.89807,
        "last": 13139,
        "buy": 13139,
        "sell": 13071.00001,
        "updated": 1435270412
    }
}

这是从有问题的api格式化的。

但是使用下面的例子,我无法从上面的json中提取任何数据。我已经尝试了几种方法来提取这些数据但到目前为止没有运气。

QJsonDocument doc = QJsonDocument::fromBinaryData(reply->readAll());
QString rootObj = doc.object().value("").toString();
qDebug() << "results.count:" << rootObj.count();

1 个答案:

答案 0 :(得分:1)

切换到使用:

QJsonDocument::fromJson(reply->readAll())而不是fromBinary,你应该好好去。

如果您在此之后仍然遇到问题,请将可选的QJsonParseError参数传递给静态函数并查看其抱怨的内容。

希望有所帮助。