我有這個JSON對象,我想訪問「持續時間」,用顯示它在控制檯上Qt來訪問JSON的元素:如何使用Qt
{
"kind": "youtube#videoListResponse",
"etag": "\"cbz3lIQ2N25AfwNr-BdxUVxJ_QY/brZ0pmrmXldPPKpGPRM-8I4dDFQ\"",
"pageInfo": {
"totalResults": 1,
"resultsPerPage": 1
},
"items": [
{
"kind": "youtube#video",
"etag": "\"cbz3lIQ2N25AfwNr-BdxUVxJ_QY/PkTW6UN9MH0O2kDApjC3penIiKs\"",
"id": "WkC18w6Ys7Y",
"contentDetails": {
"duration": "PT58M21S",
"dimension": "2d",
"definition": "hd",
"caption": "false",
"licensedContent": true,
"projection": "rectangular"
}
}
]
}
我的Qt代碼是這樣的:
{
QJsonDocument jsonResponse = QJsonDocument::fromJson(message);
results = jsonResponse.object();
QJsonValue v1 = results.value("items");
qDebug() << "v1 = " << v1;
QJsonValue v2 = v1.toObject().value("contentDetails");
qDebug() <<"v2 = " << v2;
QString v3 = v2.toObject().value("duration").toString();
qDebug() << "v3 = " << v3;
}
但是我的輸出是:
V1 = QJsonValue(數組,QJsonArray([{ 「contentDetails」:{ 「標題」: 「假」, 「定義」: 「HD」, 「尺寸」:「2D 「 」持續時間「: 」PT58M21S「, 」licensedContent「:真, 」投影「: 」矩形「}, 」ETAG「:」 \ 「cbz3lIQ2N25AfwNr-BdxUVxJ_QY/PkTW6UN9MH0O2kDApjC3penIiKs \」」, 「ID」: 「WkC18w6Ys7Y」, 「種類」: 「的YouTube#視頻」}]))
V2 = QJsonValue(未定義)
V3 = 「」
所以v1很好,但v2變得不確定。我做錯了什麼,我怎麼才能正確訪問「持續時間」項目?