JSON数据格式分析

Posted EmbededIOT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON数据格式分析相关的知识,希望对你有一定的参考价值。

     JSON是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

     JSON可以用来表示多种类型的数据,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型:对象表示为键值对、数据由逗号分隔、花括号保存对象、方括号保存数组。JSON键值对组合中键名现在前面并用双引号""包裹,使用冒号:分隔,然后是值:{"firstname": "John"}.


对象:

     对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, ...} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。


数组:

     数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 ["java", "javascript", "vb", ...] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。

最近在做项目时用到了cJSON,为此我在CSDN上进行相关资料的查阅,得到若干函数的注释(cJSON库可以在网上下载)

1.cJSON_Parse函数负责解析JSON数据包,并按照cJSON结构体的结构序列化整个数据包。使用该函数会通过malloc函数在             内存中开辟一个空间,使用完成需要手动释放。

2.cJSON_GetObjectItem函数可从cJSON结构体中查找某个子节点名称(键名称),如果查找成功可把该子节点序列化到cJSON结构体中。

3.如果需要使用cJSON结构体中的内容,可通过cJSON结构体中的valueint和valuestring取出有价值的内容(即键的值)

4.可通过cJSON_Delete释放内存空间。

一般对数据的解析用到了上述几个函数,正在对数据进行进一步解析中,毕竟看着简单做着难。

可以点击阅读原文,了解更详细的


以上是关于JSON数据格式分析的主要内容,如果未能解决你的问题,请参考以下文章

使用Python爬取分析腾讯新冠疫情数据,并对json格式进行校验

Azure 流分析作业在输入格式错误 (JSON) 后被阻止

Java入门系列:处理Json格式数据

如何在Hive中使用Json格式数据

Python将str强制转化为dict,完成json格式数据转存为Excel

记一处json格式数据传输的SQL注入测试