首页 / JSON / cjson 增强对逗号处理
cjson 增强对逗号处理
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了cjson 增强对逗号处理,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3675字,纯文字阅读大概需要6分钟。
内容图文
![cjson 增强对逗号处理](/upload/InfoBanner/zyjiaocheng/1189/b8b20a5f24014275b26fcb6a435e9893.jpg)
https://sourceforge.net/projects/cjson/
解析JSON比较好的轻量级工具,使用比较方便,今天测试发现有些JSON解析失败,但其他工具可以正常解析。
跟踪发现是cJSON对最后一个逗号分隔处理不足。譬如如下:
{"liveList":[{"name":"123",},],"code":"0",}
},]标识前面的逗号就会处理错误,理论上是空对象。
修改代码cJSon.c
测试代码:
int main(int argc, char * argv[]) { char * buff = "{\"code\":\"0\",\"isPreview\":\"0\",\"isADFreeFlag\":\"1\",\"logincode\":\"1014\",\"titleName\":\"\",\"nodeName\":\"CCTV2\",\"objType\":\"live\",\"isAudio\":\"false\",\"audioDesc\":\"??:????|nodeId=10080903\",\"playUrl\":\"http://hls.cmvideo.cn:8088/WqkB2MJM359QHiQ2ShzkitfOjzdoiTz8MF+tjo3OiT1HFopoXQNYHgnkuOCcfZeS+VKurfyXjDfwlpH2/E2GcIPjOjisQkuoQ/rua4ZnuCEbgl1aN4DvlGHKCjETOnEQ/rl3/iqecLI7ukacQKRtCb8dCBxtJ2UflZxWNfzYsvABT2DGlQenXBXeeQFMN3gifppTiH9hGcZMozYca2ECqvx0QgZGyDEbJbCTDmOr5zp9sGGBQ/0M3pP0rFOS68Dy/cctv2_49.sdp.m3u8?ec=1\",\"param\":\"contentId=60098984520150511028;nodeId=10242984;objType=live;\",\"img\":\"\",\"uc\":\"\",\"mt\":\"\",\"ucmax\":\"\",\"dlnaRate\":\"\",\"keyword\":\"\",\"livePlayback\":\"true\",\"liveList\":[{\"sTime\":\"00:01\",\"eTime\":\"00:15\",\"name\":\"?????\",},{\"sTime\":\"00:15\",\"eTime\":\"01:12\",\"name\":\"????\",},{\"sTime\":\"01:12\",\"eTime\":\"02:13\",\"name\":\"?????\",},{\"sTime\":\"02:13\",\"eTime\":\"03:11\",\"name\":\"??\",},{\"sTime\":\"03:11\",\"eTime\":\"03:54\",\"name\":\"????\",},{\"sTime\":\"03:54\",\"eTime\":\"04:36\",\"name\":\"????\",},{\"sTime\":\"04:36\",\"eTime\":\"05:07\",\"name\":\"????\",},{\"sTime\":\"05:07\",\"eTime\":\"06:10\",\"name\":\"???\",},{\"sTime\":\"06:10\",\"eTime\":\"07:00\",\"name\":\"???\",},{\"sTime\":\"07:00\",\"eTime\":\"09:00\",\"name\":\"????\",},{\"sTime\":\"09:00\",\"eTime\":\"10:05\",\"name\":\"????\",},{\"sTime\":\"10:05\",\"eTime\":\"10:40\",\"name\":\"????\",},{\"sTime\":\"10:40\",\"eTime\":\"11:10\",\"name\":\"????\",},{\"sTime\":\"11:10\",\"eTime\":\"11:28\",\"name\":\"????\",},{\"sTime\":\"11:28\",\"eTime\":\"11:50\",\"name\":\"????\",},{\"sTime\":\"11:50\",\"eTime\":\"12:30\",\"name\":\"??????\",},{\"sTime\":\"12:30\",\"eTime\":\"13:21\",\"name\":\"????\",},{\"sTime\":\"13:21\",\"eTime\":\"14:33\",\"name\":\"????\",},{\"sTime\":\"14:33\",\"eTime\":\"15:28\",\"name\":\"??????\",},{\"sTime\":\"15:28\",\"eTime\":\"16:03\",\"name\":\"?????\",},{\"sTime\":\"16:03\",\"eTime\":\"16:29\",\"name\":\"????\",},{\"sTime\":\"16:29\",\"eTime\":\"17:11\",\"name\":\"????\",},{\"sTime\":\"17:11\",\"eTime\":\"17:44\",\"name\":\"????\",},{\"sTime\":\"17:44\",\"eTime\":\"18:29\",\"name\":\"???\",},{\"sTime\":\"18:29\",\"eTime\":\"18:52\",\"name\":\"????\",},{\"sTime\":\"18:52\",\"eTime\":\"19:25\",\"name\":\"????\",},{\"sTime\":\"19:25\",\"eTime\":\"20:00\",\"name\":\"????\",},{\"sTime\":\"20:00\",\"eTime\":\"20:30\",\"name\":\"????\",},{\"sTime\":\"20:30\",\"eTime\":\"21:20\",\"name\":\"??????\",},{\"sTime\":\"21:20\",\"eTime\":\"21:56\",\"name\":\"?????\",},{\"sTime\":\"21:56\",\"eTime\":\"22:30\",\"name\":\"??????\",},{\"sTime\":\"22:30\",\"eTime\":\"23:10\",\"name\":\"??????\",},{\"sTime\":\"23:10\",\"eTime\":\"23:43\",\"name\":\"?????\",},{\"sTime\":\"23:43\",\"eTime\":\"23:59\",\"name\":\"?????\",},{\"sTime\":\"23:59\",\"eTime\":\"23:59\",\"name\":\"?????\",},],\"preparam\":\"\",\"nextparam\":\"\",\"subList\":[],\"sTime\":\"20:00\",\"eTime\":\"20:30\",\"curDay\":\"\",\"supportRate\":\"rate5=;rate4=50_8;rate3=49_8;rate2=;rate1=48_8;\",\"matchedRate\":\"rate3\",}"; printf("################,start json:%s \n",buff); cJSON *root; root = cJSON_Parse(buff); if (!root) { printf("######################!!!!!!!!!!!!!!!!!!!!!!!!!!Error before: [%s]\n",cJSON_GetErrorPtr()); return -1; } printf("################end json:\n"); return0; }
原文:http://www.cnblogs.com/iclk/p/4496761.html
内容总结
以上是互联网集市为您收集整理的cjson 增强对逗号处理全部内容,希望文章能够帮你解决cjson 增强对逗号处理所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。