Qt QJson解析json數據


Qt QJson解析json數據

//加載根目錄文件

void TeslaManageData::loadRootFolderFiles()
{
    QNetworkAccessManager *manager = new QNetworkAccessManager(this);;
    QNetworkRequest network_request;
    QByteArray post_data;

    network_request.setUrl(QUrl("http://121.60.49.57:9080/tsinghuaVCService/init/selectAllFolder.action"));
    network_request.setHeader(QNetworkRequest::UserAgentHeader, "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.4098.3 Safari/537.36");

    connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyFinished(QNetworkReply*)));

    //發送請求
    manager->get(network_request);
}

 

void TeslaManageData::replyFinished(QNetworkReply* networkReply)
{
    QTextCodec *codec = QTextCodec::codecForName("utf8");
    QByteArray allData = networkReply->readAll();
    //使用utf8編碼,這樣才可以顯示中文  
    QString all = codec->toUnicode(allData);
    
    QJsonParseError jsonError;
    QJsonDocument doucment = QJsonDocument::fromJson(allData, &jsonError);  // 轉化為 JSON 文檔
    if (!doucment.isNull() && (jsonError.error == QJsonParseError::NoError)) {  // 解析未發生錯誤
        QJsonArray jsonArray1 = doucment.array();
        
        QJsonArray::Iterator iter1;
        for (iter1 = jsonArray1.begin();iter1 != jsonArray1.end();++iter1)
        {
            QJsonObject jsonObject1 = (*iter1).toObject();
            parseJsonObjectI(jsonObject1);
        }
    }
    networkReply->deleteLater();   
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM