Как использовать итератор и получить значения, хранящиеся в файле JSON при использовании регистра переключателя? - PullRequest
0 голосов
/ 30 января 2019

Я должен использовать итератор в моем коде и извлекать значения, хранящиеся в файле myjson, используя регистр переключателя.Но я не смог этого сделать.

Ниже представлен файл Json:

{
  "Name": "Anurag",
    "Company": "Cognizant",
   "cgpa": 8.1,
   "Id": 679978,
   "location": "Noida, NCR 201301"
}

код:

#include <iostream>
#include <fstream>
#include <typeinfo>
#include <jsoncpp/json/json.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>



using namespace std;

int main(){
    ifstream ifs("leenu.json");
    Json::Reader read;
    Json::Value obj;
    read.parse(ifs,obj);
 for(Json::Value::iterator it=obj.begin();it!=obj.end();it++ )

    {

    switch(){

        case Json::nullValue:
             cout << "null\n";
             break;
        case Json::intValue:
             cout << "int " << obj[it].asLargestInt() << "\n";
             break;
        case Json::stringValue:
             cout << "string " << obj[it].asString() << "\n";
             break;
        case Json::uintValue:
             cout << "uint " << obj[it].asLargestUInt() << "\n";
             break;
        case Json::realValue:
             cout << "real " << obj[it].asDouble() << "\n";
             break;
        case Json::booleanValue:
             cout << "boolean " << obj[it].asBool() << "\n";
             break;
        case Json::arrayValue:
             cout << "array of length " << obj.size() << "\n";
             break;
        case Json::objectValue:
             cout << "object of length " << obj.size() << "\n";
             break;
        default:
             cout << "wrong type\n";
             break;

    }
}

return 0;

Как заставить работать корпус переключателя?Что я должен положить в корпус переключателя?Как использовать итератор?

...