JSONCPP遍历JSON数据

xiaoxiao2021-02-28  135

地址:http://blog.csdn.net/hellokandy/article/details/51607311

#include "json.h"   #include <iostream>   #include <string>   typedef Json::Writer JsonWriter;   typedef Json::Reader JsonReader;   typedef Json::Value  JsonValue;   using namespace std;      void print_json(JsonValue data)   {       JsonValue::Members mem = data.getMemberNames();       for (auto iter = mem.begin(); iter != mem.end(); iter++)       {           cout << *iter << "\t: ";           if (data[*iter].type() == Json::objectValue)           {               cout << endl;               print_json(data[*iter]);           }           else if (data[*iter].type() == Json::arrayValue)           {               cout << endl;               auto cnt = data[*iter].size();               for (auto i = 0; i < cnt; i++)               {                   print_json(data[*iter][i]);               }           }           else if (data[*iter].type() == Json::stringValue)           {               cout << data[*iter].asString() << endl;           }           else if (data[*iter].type() == Json::realValue)           {               cout << data[*iter].asDouble() << endl;           }           else if (data[*iter].type() == Json::uintValue)           {               cout << data[*iter].asUInt() << endl;           }           else           {               cout << data[*iter].asInt() << endl;           }       }       return;   }      int main()   {       std::string szJson = "{ \"weatherinfo\":{\"city\":\"北京\", \"cityid\" : \"101010100\", \"temp\" : \"18\", \"WD\" : \"东南风\", \"WS\" : \"1级\", \"SD\" : \"17 % \", \"WSE\" : \"1\", \"time\" : \"17:05\", \"isRadar\" : \"1\", \"Radar\" : \"JC_RADAR_AZ9010_JB\", \"njd\" : \"这是什么\", \"qy\" : \"1011\", \"rain\" : \"0\"} }";              //解析json数据       JsonReader reader;       JsonValue value;       if (!reader.parse(szJson, value))       {           return 0;       }       //遍历键值       print_json(value);       system("pause");          return 0;   }   运行结果:

转载请注明原文地址: https://www.6miu.com/read-19149.html

最新回复(0)