cJSON使用案例

该篇博客展示了如何在C语言中使用cJSON库解析JSON字符串,并进行修改,包括添加字段、更新数组元素,然后将JSON对象转换回字符串并保存到文件my.json中。

核心代码

https://download.youkuaiyun.com/download/qq_36544643/85030429

  • test.c
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"cJSON.h"

int main(void)
{
	cJSON *json,*fun;
	/*c语言,字符串解析成JSON*/
	char * data = "{\"app_name\":\"FlowerC\",\"functions\":[\"find\",\"sort\"],\"author\":\"jun\" }";
	char * json_data;
	json = cJSON_Parse(data);

	/*向json中添加新的字段*/
	cJSON_AddStringToObject(json,"creat_time","2022-03-24");
	cJSON_AddItemToObject(json,"updata-time",cJSON_CreateString("2022-03-24"));

	/*向array中添加元素*/
	fun = cJSON_GetObjectItem(json,"functions");
	cJSON_AddItemToArray(fun,cJSON_CreateString("add"));
	cJSON_AddItemToArray(fun,cJSON_CreateString("delete"));

	/*json ‘打印’成字符串 */
	json_data = cJSON_Print(json);
	printf("\n%s\n",json_data);

	/* 存入 my.json*/
	FILE * fp;
	fp = fopen("my.json","w");
	fwrite(json_data,strlen(json_data),1, fp);
	free(json_data);
	cJSON_Delete(json);
	return 0;
}

Makefile

CC = gcc
main: mytest.c cJSON.c
	${CC} $^ -o $@ -lm
	./main

myjson.zip :

  • cJSON.c
  • cJSON.h
  • mytest.c
  • Makefile
unzip myjson.zip -d myjson
cd myjson
make

输出:
main
my.json

{
	"app_name":	"FlowerC",
	"functions":	["find", "sort", "add", "delete"],
	"author":	"jun",
	"creat_time":	"2022-03-24",
	"updata-time":	"2022-03-24"
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值