[发明专利]压缩、解压gzip格式文件的方法、装置及存储介质在审
申请号: | 201810325860.0 | 申请日: | 2018-04-12 |
公开(公告)号: | CN108509642A | 公开(公告)日: | 2018-09-07 |
发明(设计)人: | 史宏志;尹云峰;赵雅倩 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 目标文件 解压缩 解压 存储介质 中存储块 存储 目标文件头部 存储容量 目标标识 预先存储 压缩 字段 | ||
本发明公开了一种解压gzip格式文件的方法,通过识别目标文件头部字段中的目标标识,从而获取预先存储于目标文件中存储块的数量和各存储块的存储容量值,从而能对目标文件中的多个存储块同时进行解压缩,相对于现有技术中逐一的对目标文件中存储块进行解压缩,本发明中的方案能每次能同时解压缩多个压缩块,从而提高了目标文件的解压缩效率。此外,本发明还公开了一种解压gzip格式文件的装置及存储介质,效果如上。
技术领域
本发明涉及计算机领域,特别涉及一种压缩、解压gzip文件格式的方法、装置及存储介质。
背景技术
gzip格式文件广泛应用于windows系统和linux系统上,其后缀多采用.gz。gzip格式也是internet上使用非常普遍的一种数据压缩格式,采用gzip编码可以改进WEB程序网络传输性能,让用户感受到更快的速度,gzip只是一种文件格式,由一到多个块组成。标准gzip文件包含三个部分,分别为头部分、数据部分和尾部分。其中头部分包括ID1、ID2、CM、FLG、MTIME、XFL、OS、以及optional part,头部分的FLG为标志位,其包含bit0set,bit1set,bit2set,bit3set,bit4set,bit5set,bit6set,bit7set。尾部分包括CRC32和ISIZE。根据标准gzip文件格式解压包含大量存储块的gzip文件时,只有解压完gzip文件中的当前存储块,才能知道当前存储块的大小以及在当前存储块之后是否还有后续存储块,这样只能逐一的解压gzip文件中的存储块,导致gzip文件的解压效率较低,其次,由于无法预先知道存储块的大小,因此也就不能并行执行存储块中的各解压缩环节,进而也导致gzip格式文件的解压效率。
因此,如何提高gzip格式文件的解压效率是本领域技术人员需要解决的问题。
发明内容
本发明的目的在于公开一种压缩、解压gzip文件格式的方法、装置及存储介质,提高了gzip格式文件的解压效率。
为实现上述目的,本发明实施例公开了如下技术方案:
第一,本发明实施例公开了一种压缩gzip格式文件的方法,包括:
获取待压缩文件,并将所述待压缩文件进行压缩得到目标文件,在压缩结束后向所述目标文件头部字段中写入存储块的目标信息,以在解压所述目标文件时能获知所述目标文件中的存储块的数量和各所述存储块的存储容量值。
第二,本发明实施例公开了一种解压gzip格式文件的方法,包括:
获取目标文件头部字段中的附加内容标识;
判断所述附加内容标识是否为目标标识;
若是,则从所述目标文件头部字段中确定所述目标文件中存储块的数量和各所述存储块的存储容量值;
以预定义规则同时对所述目标文件中的多个存储块进行解压缩。
优选的,所述判断所述附加内容标识是否为目标标识包括:
若所述附加内容标识为数字1,则所述附加内容标识为目标标识;其中,所述目标标识与所述目标文件中存储块的长度相对应。
优选的,所述以预定义规则同时对所述目标文件中的多个存储块进行解压缩包括:
将各所述存储块的存储容量值进行累加求和得到总和值;
判断所述总和值是否小于设定阈值;
若是,则根据各所述存储块的存储容量值同时对所述目标文件中的所有存储块进行解压缩;
若否,则从各所述存储块中选取多个目标存储块并根据各所述存储块的存储容量值同时对各所述目标存储块进行解压缩。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810325860.0/2.html,转载请声明来源钻瓜专利网。