[发明专利]JSON数据的压缩方法、装置及计算机可读存储介质在审
申请号: | 201910408477.6 | 申请日: | 2019-05-16 |
公开(公告)号: | CN110247665A | 公开(公告)日: | 2019-09-17 |
发明(设计)人: | 陈杰 | 申请(专利权)人: | 芜湖智久机器人有限公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 芜湖众汇知识产权代理事务所(普通合伙) 34128 | 代理人: | 曹宏筠 |
地址: | 241000 安徽省芜湖市芜*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 压缩 符号字符 索引 压缩效率 计算机可读存储介质 读取 技术效果 预设条件 遍历 排序 | ||
一种JSON数据的压缩方法,包括:遍历读取待压缩的JSON数据;若所述待压缩的JSON数据内有作用相同的第一符号字符和第二符号字符,则根据第一预设条件去掉第一符号字符或者第二符号字符,得到第一类压缩后的JSON数据。本发明所述JSON数据的压缩方法对所述JSON数据中的多余字符进行了压缩,实现了压缩所述JSON数据的技术效果;并且,通过确定索引,再根据索引对所述JSON数据的VALUE值按照索引进行压缩,也能够提高压缩效率;所述索引的设置中采用了一定的排序方法可以减少压缩所需时间,进一步提高压缩效率。
技术领域
本发明涉及数据压缩技术领域,尤其涉及一种JSON数据的压缩方法、装置及计算机可读存储介质。
背景技术
JSON是一种轻量级的数据交换格式,方便人工和机器处理。通常被用来作为数据交换格式,就像XML。但JSON的数据重复度度较高,文件越大,KEY 值重复次数越多,在移动互联网应用中传输数据消耗的流量较多。
为了避免减少JSON在数据交换中对流量的消耗,现有技术中提出了两种开源压缩方法对JSON数据进行压缩,主要包括:CJSON和HPack,CJSON的压缩方法主要是将原始JSON数据抽离成Template(模版)和Value(值),即省掉其中JSON数据中重复的“Key值”。HPack也是将原始JSON数据抽离成 Template和Value,阵列中第一个值是Template,后面依序就是Value。
但是,无论是CJSON还是Hpack,压缩后的字符串依然存在冗余数据,还有一定的压缩余地,压缩效率可以进一步提高,具体示例可参见中国发明专利,该专利名称是:一种无损JSON数据压缩方法,专利号是:ZL 201310328885.3。
发明内容
本发明的目的在于提供一种JSON数据的压缩方法、装置及计算机可读存储介质,解决现有技术中的JSON数据压缩方法中字符串仍然存在冗余数据,压缩效率不够高的问题。
如上构思,本发明所采用的技术方案是:一种JSON数据的压缩方法。
所述JSON数据的压缩方法包括:遍历读取待压缩的JSON数据;
若所述待压缩的JSON数据内有作用相同的第一符号字符和第二符号字符,则根据第一预设条件去掉第一符号字符或者第二符号字符,得到第一类压缩后的JSON数据。
进一步地,所述作用相同包括:用于间隔单个VALUE值和KEY值;或者,用于间隔单组VALEU值和KEY值。
进一步地,所述第一预设体条件为:符号字符仅作为符号。
进一步地,若被去掉的所述第一符号字符内的数据对象的特定位置包含有所述第二符号字符,或者,若被去掉的所述第二符号字符内的数据对象的特定位置包含有所述第三符号字符;则在所述特定位置增加第三符号字符,所述第三符号字符为首次出现在所述JSON数据中。
进一步地,所述方法还包括:
根据所述第一类压缩后的JSON数据确定索引与第一JSON数据,根据索引对第一JSON数据进行压缩。
进一步地,所述确定索引包括:
取所述第一类压缩后的JSON数据作为初始索引;
对所述初始索引中的值进行排序后得到索引。
进一步地,所述对初始索引中的值进行排序包括:
将KEY值排序到索引的尾部;
将JSON数据中的VALUE值按照在所述初始集中的出现频率依次从所述索引的头部开始排列。
进一步地,所述根据索引对第一JSON数据进行压缩包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于芜湖智久机器人有限公司,未经芜湖智久机器人有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910408477.6/2.html,转载请声明来源钻瓜专利网。