一种Json格式数据解析方法及数据接收端的制作方法_3

文档序号:9597165阅读:来源:国知局
Object中含有JsonArray。如果要获得完整的JsonArray就必须对JsonObject完全遍历。
[0096]如例:
[0097]{"keyl":"valuel", "key2":"value2", "key3":"value3", 〃jsonArrayl":[{"firstNam e〃:〃Brett〃,〃lastName〃:〃McLaughlin〃,〃email〃:〃aaaa〃},
[0098]{"firstName":"Jason", "lastName":"Hunter", "email":"bbbb"},
[0099]{"firstName":"Ell1tte", "lastName":"Harold", "email":"cccc"}
[0100]]}}。(示例二)
[0101]JsonObject的名称(key)和值(value)都是由大括号括起来的以逗号分隔的。JsonArray本质是一个由中括号括起来的JsonObject的特殊的值(value)。这个值(value)又是由JsonObject组成。因此首先遍历整个JsonObject通过中括号找出JsonArray,并把它从JsonObject中取出,再分别用split方法可以获取每一对名称(key)和值(value)。
[0102]步骤S304: JsonArray key 与 value 的对应:
[0103]使用字符串解析方法,依据JsonObject标准格式中key和value对应法则完成
key和value的--对应。由(示例二 )中的例子可知,JsonArray实际是JsonObject中有特殊值(value)的名称(key) /值(value)对。值(value)是由标准的JsonObject组成。用split方法可以获取每一对名称(key)和值(value)。
[0104]步骤S305 JsonArray key与value取值的取值与存储:
[0105]依据JsonArray 是由 JsonObject 组成的 list,解析后的 JsonArray 作为 list 存储并输出。可用标准的list取值方法取出每对key和value的值。
[0106]步骤S306:区分 JsonObject key 与 value:
[0107]利用JsonObject标准格式的特点,使用字符窜分析的方法区分key和value。获取名称(key)和值(value)的方法都用split。
[0108]步骤S307:Json0b ject key 与 value 的对应:
[0109]使用字符串解析方法,依据JsonObject标准格式中key和value对应法则完成
key和value的--对应。名称(key)和值(value)是使用split方法一对一对取出来的,
因此名称(key)和值(value)必定是--对应的。
[0110]步骤S308 JsonObject key与value取值的取值与存储:
[0111]解析后的JsonObject每一对key和value作为list中一个元素存储并输出,可用标准的list取值方法取出每对key和value的值。JsonObject中的名称(key)和值(value)使用split方法一对一对取出,并放入list。使用list标准遍历方法可取出每一对名称(key)和值(value)。
[0112]名称(key)是值(value)的唯一标识,在JsonObject中不可重复。值(value)是数据,获取名称(key)和值(value)就获取了数据,完成了数据传输。
[0113]步骤S309:结束阶段,进行Json最终解析结果输出:
[0114]JsonArray (如果含有)和JsonObjcet的解析结构组成一个大的list作为最终结果存储并输出,可用标准的list取值方法取出每对key和value的值。(3)中所用例子包含 JsonArray 和 JsonObject。
[0115]本发明一个或多个实施例,至少具有以下有益效果:
[0116]由于在本发明实施例中,提供了一种Json格式数据解析方法,接收数据发送端发送的Json格式数据;通过字符串分析,通过JsonArray对应的特殊格式符,判断所述Json格式数据中是否包含JsonArray ;在所述Json格式数据中包含所述JsonArray时,提取所述JsonArray的key和value ;使用字符串解析方法,依据JsonObject标准格式中key和
value对应法则完成所述JsonArray的key和value的--对应;将key和value存入List
并输出;使用字符串解析方法,依据JsonObject标准格式中key和value对应法则,完成所述JsonObject的key和value的--对应;将解析后的JsonObject每一对key和value
作为所述List中一个元素存储并输出。故而,即使数据接收端不知道Json格式数据中的key和value的对应关系,也能够通过字符串分析的方式,从中提取出Json格式数据的key和value、key和value的对应关系,并将其以列表的形式输出,达到了数据接收方即使不知道key和value的对应关系,也能够正确接收和解析Json格式数据的技术效果;通过该方案能够将Json格式数据的名称(key)与值(value)分离并存储,从而简化了软件开发流程、提高了软件开发的效率并且降低了程序源代码的复杂程度、满足快速软件开发的需要。
[0117]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0118]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种Json格式数据解析方法,应用于数据接收端,其特征在于,包括: 接收数据发送端发送的Json格式数据; 通过字符串分析,通过JsonArray对应的特殊格式符,判断所述Json格式数据中是否包含 JsonArray ; 在所述Json格式数据中包含所述JsonArray时,提取所述JsonArray的key和value ; 使用字符串解析方法,依据JsonObject标准格式中key和value对应法则完成所述JsonArray 的 key 和 value 的--对应; 将所述JsonArray的key和value存入List并输出; 使用字符串解析方法,依据JsonObject标准格式中key和value对应法则,完成所述JsonObject 的 key 和 value 的--对应; 将解析后的JsonObject每一对key和value作为所述List —个元素存储并输出。2.如权利要求1所述的方法,其特征在于,所述判断所述Json格式数据中是否包含JsonArray,具体为: 判断所述Json格式数据中是否包含格式为:第一大括号组、位于所述第一大括号组内的第一中括号组、位于所述第一中括号组中的第二大括号组的字符串。3.一种数据接收端,其特征在于,包括: 接收模块,用于接收数据发送端发送的Json格式数据; 分析模块,用于通过字符串分析,通过JsonArray对应的特殊格式符,判断所述Json格式数据中是否包含JsonArray ; 第一提取模块,用于在所述Json格式数据中包含所述JsonArray时,提取所述JsonArray 的 key 和 value ; 解析模块,用于使用字符串解析方法,依据JsonObject标准格式中key和value对应法则完成所述JsonArray的key和value的--对应; 第一输出模块,用于将所述JsonArray的key和value存入List并输出; 对应模块,用于使用字符串解析方法,依据JsonObject标准格式中key和value对应法则,完成所述JsonObject的key和value的--对应; 第二输出模块,用于将解析后的JsonObject每一对key和value作为所述List中一个元素存储并输出。4.如权利要求3所述的数据接收端,其特征在于,所述分析模块,具体用于: 判断所述Json格式数据中是否包含格式为:第一大括号组、位于所述第一大括号组内的第一中括号组、位于所述第一中括号组中的第二大括号组的字符串。
【专利摘要】本发明涉及软件设计领域,公开了一种Json格式数据解析方法及数据接收端,以解决现有技术中数据接收方没有约定好key的情况下是不能正确接收任何以Json格式传送的数据的技术问题。该方法包括:数据接收端接收数据发送端发送的Json格式数据;通过字符串分析,通过JsonArray对应的特殊格式符,判断Json格式数据中是否包含JsonArray;在Json格式数据中包含JsonArray时,提取JsonArray的key和value;完成key和value的一一对应;将key和value存入List并输出;完成JsonObject的key和value的一一对应;将解析后的JsonObject每一对key和value作为List中一个元素存储并输出。达到了数据接收方即使不知道key和value的对应关系,也能够正确接收和解析Json格式数据的技术效果。
【IPC分类】G06F9/44
【公开号】CN105354020
【申请号】CN201510638935
【发明人】彭征, 林聪
【申请人】武汉钢铁(集团)公司
【公开日】2016年2月24日
【申请日】2015年9月30日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1