微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

json字符串怎么取值 c语言

在C语言中,处理JSON字符串需要使用一些第三方库,如cJSON

#include "cJSON.h" // 引入cJSON头文件

void parse_json_str(const char* json_str){
    cJSON* root = cJSON_Parse(json_str); // 解析json字符串
    if(!root){
        printf("Json parse error!\n");
        return;
    }

    // 获取root中的字段值
    cJSON* name = cJSON_GetobjectItem(root,"name");
    cJSON* age = cJSON_GetobjectItem(root,"age");
    cJSON* hobby = cJSON_GetobjectItem(root,"hobby");

    // 判断字段值是否为NULL
    if(cJSON_Isstring(name)){
        printf("name: %s\n",name->valuestring);
    }
    if(cJSON_IsNumber(age)){
        printf("age: %d\n",age->valueint);
    }
    if(cJSON_IsArray(hobby)){
        cJSON* sub_item = NULL;
        cJSON_ArrayForEach(sub_item,hobby){
            if(cJSON_Isstring(sub_item)){
                printf("hobby: %s\n",sub_item->valuestring);
            }
        }
    }

    cJSON_Delete(root); // 释放内存
}

json字符串怎么取值 c语言

上述代码在cJSON库的帮助下,可以对JSON字符串进行解析,取出其中的字段值。使用 cJSON_GetobjectItem获取字段值,并使用cJSON_IsXxx函数判断字段值的类型,再使用相应的cJSON_XxxValue函数取出字段值即可。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐