c++解析json

1.包含lib_json.lib及头文件
2.code

bool readJson()
{

    FILE *fp;
    int size = 0;

    //二进制方式打开文件  
    fp = fopen("test.json", "rb");
    if (NULL == fp)
    {
        printf("Error:Open input.c file fail!\n");
        return false;
    }

    //求得文件的大小  
    fseek(fp, 0, SEEK_END);
    size = ftell(fp);
    rewind(fp);


    char ar[20480];
    memset(ar, 0, 20480);

    //读文件  
    fread(ar, 1, size, fp);//每次读一个,共读size次  
    fclose(fp);


    Json::CharReaderBuilder b;
    Json::CharReader* reader(b.newCharReader());
    JSONCPP_STRING errs;
    Json::Value value;
    std::string out;


    if (reader->parse((char*)ar, (char*)std::strlen((char*)ar), &value, &errs))
    {
        //解析json对象数组
        const Json::Value Obj1 = value["employees"];
        int inum1 = Obj1.size();
        for (int j = 0; j < inum1; j++)
        {
            cout << Obj1[j]["firstName"].asString() << endl;
            cout << Obj1[j]["lastName"].asString() << endl;
        }
        //解析json对象
        const Json::Value Obj2 = value["c++"];
        cout << Obj2["hello"].asString() << endl;
    }
    else
    {
        delete reader;
        return false;
    }

    delete reader;
    return true;
}

3.json文件


{
    "employees": [
        {
            "firstName": "Bill",
            "lastName": "Gates"
        },
        {
            "firstName": "George",
            "lastName": "Bush"
        },
        {
            "firstName": "Thomas",
            "lastName": "Carter"
        }
    ],
    "c++":{
        "hello":"world"
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似,本文主...
    KingOfLion阅读 4,383评论 0 0
  • JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于Jav...
    littlewoodman阅读 1,349评论 0 0
  • 最近需要在.net webserver中get请求高德地图的url,地理编码获取到地址的经纬度,高德返回的是Jso...
    贾梦阳阅读 1,688评论 0 0
  • 遇到一个第一个没有key值的数组json https://www.newtonsoft.com/json/help...
    ZXT_6e4e阅读 5,231评论 0 0
  • 2019-1-23 星期三 晴 下午,我和妹妹在后面晒太阳,爸爸手上拿着帐篷跟我说:要不要把帐篷搭起来啊...
    黄雨彤阅读 236评论 0 0

友情链接更多精彩内容