Jsoncpp gets all keys and values when the Key is unknown

Get the key in json: getMemberNames()

    Json::Value root;
    Json::Reader reader;
	Json::Value::Members members;
	
    std::ifstream data_cam(usbCameraPath, std::ios::in);
    if(!data_cam.is_open())
    {
    
    
        std::cout << "open usbCamPath false!!!" << std::endl;
        return false;
    }

    if(!reader.parse(data_cam, root))
    {
    
    
        std::cout << "parse usbCam false!!!" << std::endl;
        return false;
    }

    members = root.getMemberNames(); // 获取所有key的值
    for(Json::Value::Members::iterator it = members.begin(); it != members.end(); it++)
    {
    
    
        string key = *it;
        vector<vector<double>> tmp_vec;
        for(int i = 0; i < root[key].size(); i++)
        {
    
    
            vector<double> tmp;
            if(root[key][i].size() == 0)
                tmp.push_back(root[key][i].asDouble());
            else{
    
    
                for(int j = 0; j < root[key][i].size(); j++)
                    tmp.push_back(root[key][i][j].asDouble());
            }
            tmp_vec.push_back(tmp);
        }
        g_camConfig[key] =  tmp_vec;
    }
    data_cam.close();

Guess you like

Origin blog.csdn.net/only_a_Heroic_car/article/details/127847226