一种数据压缩方法和装置制造方法及图纸

技术编号:15794531 阅读:69 留言:0更新日期:2017-07-10 08:52
本发明专利技术提供了一种数据压缩方法包括:接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法;根据所选择的压缩算法对需要压缩的数据进行压缩,得到压缩后的数据;将所述压缩算法对应的标识添加到包头的第一指定位置,由所述压缩后的数据和包头生成压缩数据包。通过压缩算法的标识的设定,可以使得本方法能够适应不同的算法的压缩文件的解压和压缩,有利于提高用户使用的便利性。

【技术实现步骤摘要】
一种数据压缩方法和装置
本专利技术属于数据压缩领域,尤其涉及一种数据压缩方法和装置。
技术介绍
数据压缩是指在不丢失有用信息的前提下,按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间,提高其传输、存储和处理效率的方法。通过数据压缩算法将需要存储、传送的数据进行压缩后,可以使用较小的存储空间存储更多的数据,并且在数据传输时,能够大大的节约网络资源,并且提高传输的效率。目前,对数据进行压缩时,通常是选用现有的数据压缩工具,比如WINRAR、WINZIP、好压、360压缩等工具。并且不同的压缩工具所采用的压缩算法也可能不相同。因此,当用户使用压缩工具A进行压缩时,在不同的使用环境中,比如将压缩的数据发送至其它用户,或者将压缩的数据复制到其它设备中时,可能会由于压缩工具的不同,无法对数据进行有效的解压。需要用户在新的设备中安装对应的压缩工具,操作较为麻烦。
技术实现思路
本专利技术的目的在于提供一种数据压缩方法和装置,以解决现有技术由于压缩工具多种多样,导致压缩的数据不能有效的适应不同的工具进行解压,用户操作不方便的问题。第一方面,本专利技术实施例提供了一种数据压缩方法,所述方法包括:接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法;根据所选择的压缩算法对需要压缩的数据进行压缩,得到压缩后的数据;将所述压缩算法对应的标识添加到包头的第一指定位置,由所述压缩后的数据和包头生成压缩数据包。结合第一方面,在第一方面的第一种可能实现方式中,在所述接收数据压缩请求,获取需要压缩的数据以及选择压缩所述数据所选择的压缩算法的步骤之后,所述方法还包括:对需要压缩的数据进行循环冗余校验,生成循环冗余校验结果;将所述循环冗余校验结果添加到所述包头的第二指定位置。结合第一方面,在第一方面的第二种可能实现方式中,在所述接收数据压缩请求,获取需要压缩的数据以及选择压缩所述数据所选择的压缩算法的步骤之后,所述方法还包括:获取压缩后的数据的长度以及需要压缩的数据的原始长度;将所述压缩后的数据的长度写入所述包头的第三指定位置,以及将需要压缩的数据的原始长度写入包头的第四指定位置。第二方面,本专利技术实施例提供了一种数据解压方法,所述方法包括:接收数据解压请求,获取压缩数据包中的压缩后的数据所对应的压缩算法对应的标识,以及在压缩数据包的指定位置获取压缩后的数据;根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据。结合第二方面,在第二方面的第一种可能实现方式中,在所述根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据步骤之后,所述方法还包括:通过循环结果校验方法对解压的数据进行校验,生成解压数据的校验结果;将所述解压数据的校验结果与存储在包头第二指定位置的校验结果进行比较,根据比较结果判断所述解压的数据的完整性。结合第二方面,在第二方面的第二种可能实现方式中,在所述根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据步骤之前,所述方法还包括:获取包头的第三指定位置中存储的压缩后的数据的长度,以及所述压缩数据包中的压缩后的数据的长度,根据压缩后的数据的长度与存储的长度的比较结果判断数据是否完整;以及在所述根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据步骤之后,所述方法还包括:获取包头的第四指定位置存储的压缩前的数据的长度,以及解压缩的数据的长度,根据解压缩的数据的长度与存储的长度的比较结果判断解压后的数据是否完整。第三方面,本专利技术实施例提供了一种数据压缩装置,所述装置包括:请求单元,用于接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法;压缩单元,用于根据所选择的压缩算法对需要压缩的数据进行压缩,得到压缩后的数据;压缩数据包生成单元,用于将所述压缩算法对应的标识添加到包头的第一指定位置,由所述压缩后的数据和包头生成压缩数据包。结合第三方面,在第三方面的第一种可能实现方式中,所述装置还包括:校验单元,用于对需要压缩的数据进行循环冗余校验,生成循环冗余校验结果;校验结果添加单元,用于将所述循环冗余校验结果添加到所述包头的第二指定位置。结合第三方面,在第三方面的第二种可能实现方式中,所述装置还包括:原始长度获取单元,用于获取压缩后的数据的长度以及需要压缩的数据的原始长度;原始长度写入单元,用于将所述压缩后的数据的长度写入所述包头的第三指定位置,以及将需要压缩的数据的原始长度写入包头的第四指定位置。第四方面,本专利技术实施例提供了一种数据解压装置,所述装置包括:数据获取单元,用于接收数据解压请求,获取压缩数据包中的压缩后的数据所对应的压缩算法对应的标识,以及在压缩数据包的指定位置获取压缩后的数据;解压单元,用于根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据。在本专利技术中,在对数据进行压缩时,通过选择的压缩算法对需要压缩的数据进行压缩,并且将选择的压缩算法的标识添加包头的第一指定位置,由包头和压缩后的数据成生压缩数据包。当进行解压时,读取所述包头的第一指定位置的压缩算法的标识,调用对应的压缩算法对压缩的数据进行解压,得到解析的数据。通过压缩算法的标识的设定,可以使得本方法能够适应不同的算法的压缩文件的解压和压缩,有利于提高用户使用的便利性。附图说明图1是本专利技术第一实施例提供的数据压缩方法的实现流程图;图2是本专利技术第二实施例提供的数据解压方法的实现流程图;图3是本专利技术第三实施例提供的数据压缩装置的结构示意图;图4为本专利技术第三实施例提供的数据解压装置的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例的目的在于提供一种数据压缩方法和装置,以解决现有技术中由于压缩工具各种各样,并且不同的压缩工具所采用的压缩算法也会有所不同,导致不同的工具之间无法对压缩的数据包识别和解压。比如,当使用第一压缩算法的工具X进行文件压缩后,如果使用第二压缩算法的工具Y进行文件解压时可能会解压失败。因而导致用户需要在终端安装多个压缩工具,操作较为麻烦。实施例一:图1示出了本专利技术第一实施例提供的数据压缩方法的实现流程,详述如下:在步骤S101中,接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法。具体的,所述接收数据压缩请求,可以为用户需要对数据进行压缩时,调用本方法中的数据压缩程序接口,生成数据压缩请求。所述需要压缩的数据,也就是用户所选择的需要压缩的文件。所述文件可以为音频文件、视频文件、文本文件或者其它文件等。所述需要压缩的数据,可以为一个文件,也可以为多个文件的组合。所述压缩数据所选择的压缩算法,可以在得到需要压缩的数据后,对待压缩的数据取样本进行压缩测试分析和判断。比如,判断需要压缩的数据为视频文件,或者判断需要压缩的数据为音频文件,或者判断需要压缩的数据为文本文件等,根据文件的样本数据测试压缩结果,查找那种压缩算法压缩效果好,就选择那种压缩算法。当然,还可以根据用户本文档来自技高网...
一种数据压缩方法和装置

【技术保护点】
一种数据压缩方法,其特征在于,所述方法包括:接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法;根据所选择的压缩算法对需要压缩的数据进行压缩,得到压缩后的数据;将所述压缩算法对应的标识添加到包头的第一指定位置,由所述压缩后的数据和包头生成压缩数据包。

【技术特征摘要】
1.一种数据压缩方法,其特征在于,所述方法包括:接收数据压缩请求,获取需要压缩的数据以及压缩所述数据所选择的压缩算法;根据所选择的压缩算法对需要压缩的数据进行压缩,得到压缩后的数据;将所述压缩算法对应的标识添加到包头的第一指定位置,由所述压缩后的数据和包头生成压缩数据包。2.根据权利要求1所述方法,其特征在于,在所述接收数据压缩请求,获取需要压缩的数据以及选择压缩所述数据所选择的压缩算法的步骤之后,所述方法还包括:对需要压缩的数据进行循环冗余校验,生成循环冗余校验结果;将所述循环冗余校验结果添加到所述包头的第二指定位置。3.根据权利要求1所述方法,其特征在于,在所述接收数据压缩请求,获取需要压缩的数据以及选择压缩所述数据所选择的压缩算法的步骤之后,所述方法还包括:获取压缩后的数据的长度以及需要压缩的数据的原始长度;将所述压缩后的数据的长度写入所述包头的第三指定位置,以及将需要压缩的数据的原始长度写入包头的第四指定位置。4.一种数据解压方法,其特征在于,所述方法包括:接收数据解压请求,获取压缩数据包中的压缩后的数据所对应的压缩算法对应的标识,以及在压缩数据包的指定位置获取压缩后的数据;根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据。5.根据权利要求4所述方法,其特征在于,在所述根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压缩,得到解压缩的数据步骤之后,所述方法还包括:通过循环结果校验方法对解压的数据进行校验,生成解压数据的校验结果;将所述解压数据的校验结果与存储在包头第二指定位置的校验结果进行比较,根据比较结果判断所述解压的数据的完整性。6.根据权利要求4所述方法,其特征在于,在所述根据所述标识查找对应的压缩算法,根据所述压缩算法对压缩后的数据进行解压...

【专利技术属性】
技术研发人员:余兵
申请(专利权)人:深圳国泰安教育技术股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1