cJSON删除数组中指定元素

例子

cJSON删除数组中指定的元素
上代码:

#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "cJSON.h"
#include "pub_function.h"

int main(){
    
    
    cJSON *json;
    char *content;
    char jobfile[256] = "./job_interface.json";
    cJSON *item;
    int value;
    int len;
    cJSON *item_c;

    json=rwg_load_json_file(jobfile);
    item=cJSON_GetObjectItem(json,"test");
    len=cJSON_GetArraySize(item);
    for (uint32_t i = 0; i < len; i++)
    {
    
    
        item_c=cJSON_GetArrayItem(item,i);
        if (item_c->valueint == 2)
        {
    
    
            cJSON_DeleteItemFromArray(item,i);
            len = len-1;
        }
    }
    printf("%s",cJSON_Print(json));
    cJSON_Delete(json);
}

json:

{
    
    
	"/dev/ttyS0":	[10072, 10085, 10086, 10087, 10088],
	"test":	[1,2,3,4,5,6,7],
}

执行结果:
在这里插入图片描述

Guess you like

Origin blog.csdn.net/lzl980111/article/details/113564429