大佬教程收集整理的这篇文章主要介绍了cJSON(Linux C),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
cJSON官网:http://sourceforge.net/projects/cjson/
下面是使用cJSON的例子:
/*=============================================================== * Copyright (C) 2015 All rights reserved. * * 文件名称:@R_450_9214@cjson.c * 创 建 者:Gavin (E-mail:gavinlu1015@gmail.com) * 创建日期:2015年06月1日 * 描 述:C语言JSON简单用例 * ================================================================*/
#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"
void create_cjson(char **out)
{
cJSON *root,*fmt;
/* 创建一个json */
root = cJSON_CreateObject();
/* 定义json root */
cJSON_AddItemToObject(root,"USR_INFO",fmt = cJSON_CreateObject());
/* 成员 int型 */
cJSON_AddnumberToObject(fmt,"usrid",7);
/* 成员 String型 */
cJSON_AddStringToObject(fmt,"E-mail","gavinlu1990@gamail.com");
/* 将JSON转换成String型 */
*out = cJSON_Print(root);
/* 删除JSON占用内存 */
cJSON_delete(root);
}
void parse_cjson(char *out)
{
cJSON *out_json,*root,*format;
char *parse_result;
char *E_mail;
int id;
/* 将String型JSON进行转换 */
out_json = cJSON_Parse(out);
if (!out_json) {
printf("Error before: [%s]\n",cJSON_GetErrorPtr());
} else {
format = cJSON_GetObjectItem(out_json,"USR_INFO");
/* 获取usrid、E-mail信息 */
id = cJSON_GetObjectItem(format,"usrid")->valueint;
E_mail = cJSON_GetObjectItem(format,"E-mail")->valueString;
free(out_json);
}
printf("\n解析结果:\n");
printf("%d\n",id);
printf("%s\n",E_mail);
}
int main(int argc,const char *argv[])
{
char *out = NULL;
/* 构建json */
create_cjson(&out);
printf("构成JSON:\n%s\n",out);
/* 解析json */
parse_cjson(out);
return 0;
}
/** * 编译: * gcc @R_450_9214@json.c cJSON.c -o @R_450_9214@json -lm * (PS:cJSON.c cJSON.h从下载包提取出来) */
结果:
以上是大佬教程为你收集整理的cJSON(Linux C)全部内容,希望文章能够帮你解决cJSON(Linux C)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。