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

json字符串读取c

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它便于人阅读和编写,同时也方便机器解析和生成。在C语言中,我们可以通过一些库来解析JSON字符串。

json字符串读取c

一个常用的库是cJSON,它是一款开源的解析JSON字符串的C语言库,非常适合嵌入式设备中。下面是一个使用cJSON库解析JSON字符串的示例:

#include <stdio.h>
#include <cJSON.h>

int main()
{
    char *json_str = "{ \"name\":\"John\",\"age\":30,\"city\":\"New York\" }";
    cJSON *json = cJSON_Parse(json_str);

    if (json == NULL) {
        printf("解析JSON字符串失败。\n");
        return 1;
    }

    cJSON *name = cJSON_GetobjectItem(json,"name");
    cJSON *age = cJSON_GetobjectItem(json,"age");
    cJSON *city = cJSON_GetobjectItem(json,"city");

    printf("姓名:%s\n",name->valuestring);
    printf("年龄:%d\n",age->valueint);
    printf("城市:%s\n",city->valuestring);

    cJSON_Delete(json);

    return 0;
}

在这个示例中,我们首先定义了一个JSON字符串,并将其传递给cJSON_Parse()函数进行解析。如果解析失败,我们就会得到一个NULL指针,需要进行错误处理。

接着,我们使用cJSON_GetobjectItem()函数获取JSON中的三个键值对,并打印出来。其中,name和city是字符串类型的,需要使用valuestring获取其值;age是整型类型的,需要使用valueint获取其值。

最后,我们使用cJSON_Delete()函数释放内存。

总的来说,使用cJSON库读取JSON字符串非常方便快捷,如果你需要在C语言中进行数据交换,建议使用cJSON库来处理JSON字符串。

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

相关推荐