Exjson C/C++ 高性能 JSON 解析库开源项目

我要开发同款
匿名用户2019年05月10日
89阅读

技术信息

开源地址
https://gitee.com/josinli/Exjson
授权协议
LGPL

作品详情

C语言JSON解析库:Exjso什么是Exjso?

Exjso是一款高性能的基于Flex&Biso的 JSON 解析器,Xserver引擎自带,其他需要使用的只需要引入几个头文件和源文件即可

Exjso适应场合

Exjso适合于在需要在底层C语言或者C++语言层面使用 JSON 功能的场景。目前大部分接口使用的都是 JSON 格式传输,后面增加 xml解析库

注意

Exjso支持注释,Exjso中注释以 # 或者// 开头,一直延续到行尾,如下是合格的 Exjso格式

{"ame":"Exjso",//名字:Exjso"versio":"1.0",#版本号"platform":["MacOSX","Liux","Widows"]}APIs//生成一个EXJSON对象EXJSON_APIEXJSON*INIT_EXJSON();//生成一个strig:logit的键值对EXJSON_APIitadd_object_it(EXJSON*exjso,char*key,logval);//生成一个strig:double的键值对EXJSON_APIitadd_object_double(EXJSON*exjso,char*key,doubleval);//生成一个strig:strig的键值对EXJSON_APIitadd_object_strig(EXJSON*exjso,char*key,char*val);//生成一个strig:{}的键值对EXJSON_APIitadd_object_object(EXJSON*exjso,char*key,void*val);//生成一个strig:[]的键值对EXJSON_APIitadd_object_array(EXJSON*exjso,char*key,void*val);//上面添加方法的一个通用函数EXJSON_APIitadd_object_ptr(EXJSON*exjso,char*key,void*val,usigedcharval_type);//生成一个logit的一个数组元素EXJSON_APIitadd_array_it(EXJSON*exjso,logval);//生成一个double的一个数组元素EXJSON_APIitadd_array_double(EXJSON*exjso,doubleval);//生成一个strig的一个数组元素EXJSON_APIitadd_array_strig(EXJSON*exjso,char*val);//生成一个对象{}的一个数组元素EXJSON_APIitadd_array_object(EXJSON*exjso,void*val);//生成一个数组的的一个数组元素EXJSON_APIitadd_array_array(EXJSON*exjso,void*val);//上面方法的通用函数EXJSON_APIitadd_array_ptr(EXJSON*exjso,void*val,usigedcharval_type);//打印EXJSON信息PRINT_EXJSON(exjso);//从EXJSON结构中获取数据EXJSON_APIvoid*exjso_get_val_from_key(EXJSON*exjso,char*key);EXJSON_APIvoid*exjso_get_val_from_idex(EXJSON*exjso,itidex);//编码JSON字符串为EXJSON结构EXJSON_APIexterEXJSON*decode_jso(char*jso_strig);//EXJSON结构解码为JSON字符串EXJSON_APIchar*ecode_jso(EXJSON*exjso);//使用完毕后,需要释放内存EXJSON_APIvoiddestroy_exjso(EXJSON*exjso);示例#iclude<stdio.h>#iclude"exjso.h"itmai(itargc,char*argv[]){EXJSON*v=decode_jso("{\""\"b\":100,\""\"a\":{\""\"a\":\"b\"\""}\""}");//返回的字符串因为分配了内存,需要手动释放char*str=ecode_jso(v);pritf("%s",str);free(str);destroy_exjso(v);retur0;}

功能介绍

C语言JSON解析库:Exjson 什么是Exjson? Exjson是一款高性能的基于Flex & Bison的 JSON 解析器,Xserver引擎自带,其他需要使用的只需要引入几个头文件和...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论