文件的处理方法、装置及系统制造方法及图纸

技术编号:20915246 阅读:15 留言:0更新日期:2019-04-20 09:26
本发明专利技术提供一种文件的处理方法、装置及系统,增量包文件流包括增量包索引文件和至少一个资源文件,在获取到增量包文件流后,根据索引文件中的文件名称和文件位置信息,可以直接从增量包文件流中获取与文件名称对应的资源文件,而不需要将增量包文件流整体解压后才能获取到增量包中的各个资源文件,节省了对增量包解包的过程;利用从增量包文件流中获取到的资源文件,更新本地全量包中文件名称相同的资源文件;并将从增量包文件流中获取到的全量包中不存在的资源文件添加到本地全量包的资源文件中;根据本地全量包的资源文件,打包生成新的全量包。由于节省了对增量包解包的过程,解决了增量包解包浪费时间的问题。

Processing Method, Device and System of Documents

The invention provides a file processing method, device and system. The incremental package file stream includes an incremental package index file and at least one resource file. After obtaining the incremental package file stream, according to the file name and location information in the index file, the resource file corresponding to the file name can be obtained directly from the incremental package file stream without requiring the incremental package file stream. After decompression, the resource files in the incremental package can be obtained, which saves the process of unpacking the incremental package. The resource files obtained from the incremental package file stream are used to update the resource files with the same file name in the local full package, and the resource files that do not exist in the full package obtained from the incremental package file stream are added to the resource files of the local full package. According to the local full package resource file, the new full package is generated by packaging. Because of saving the process of unpacking incremental packages, the problem of wasting time in unpacking incremental packages is solved.

【技术实现步骤摘要】
文件的处理方法、装置及系统
本专利技术属于应用更新
,尤其涉及一种文件的处理方法、装置及系统。
技术介绍
应用程序增量更新时,运维人员会将该次增量更新对应的增量包和全量包部署到服务器。客户端应用程序启动时会连接服务器进行版本更新检查,检测到存在新版本的应用程序,则向客户端提示应用程序的新版版信息。客户端向服务器请求更新应用程序,为降低带宽占用,客户端只会从服务器下载该应用程序的新版本的增量包,而客户端为应急需求需要保留该应用程序的新版本的全量包。进而需要将从服务器获取到的新版本的增量包与客户端本地的全量包合并生成新版本的全量包。现有技术中将增量包解包成文件后与客户端本地全量包文件合并再进行打包后生成新的全量包。由于增量包解包过程以及全量包的打包过程耗费时间长,不能实现快速地生成新版本的全量包。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种文件的处理方法、装置及系统,以解决现有技术中将增量包合并到全量包导致耗费时间长的问题。技术方案如下:本专利技术提供一种文件的处理方法,应用于客户端,包括:获取增量包文件流;其中,所述增量包文件流包括增量包索引文件和至少一个资源文件,所述增量包索引文件中存储有文件名称、文件位置信息,文件名称与文件位置信息之间存在对应关系;根据文件名称以及与文件名称对应的文件位置信息,从所述增量包文件流中获取与每个文件名称对应的资源文件,直至获取到所述增量包索引文件中存储的全部文件名称对应的资源文件;获取本地全量包的全量包索引文件;依次判断增量包索引文件中的每个文件名称是否在全量包索引文件的文件名称中存在相同的文件名称;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中存在相同的文件名称,则利用从增量包文件流中获取到的与该文件名称对应的资源文件,更新本地全量包中与该文件名称相同的文件名称对应的资源文件;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中不存在相同的文件名称,则将从增量包文件流中获取到的与该文件名称对应的资源文件添加到本地全量包的资源文件中;根据本地全量包的资源文件,打包生成新的全量包。优选地,所述根据本地全量包的资源文件,打包生成新的全量包包括:获取本地全量包中包括的每个资源文件的文件名称;根据文件名称生成新的全量包索引文件;其中,新的全量包索引文件中为每个资源文件预留位置信息存储空间;针对每个资源文件,确定该资源文件在全量包文件流中的起始位置和终止位置;将该资源文件在全量包文件流中的起始位置和终止位置存储至为该资源文件预留的位置信息存储空间;将该资源文件加入全量包文件流中;返回执行针对每个资源文件,确定该资源文件在全量包文件流中的起始位置和终止位置的步骤及其后续步骤,直至完成将每个资源文件全部加入全量包文件流,得到新的全量包。优选地,所述依次将每个资源文件加入全量包文件流中包括:获取每个资源文件的压缩标识;若所述压缩标识表示压缩,则利用压缩插件压缩该资源文件;将压缩后的该资源文件加入全量包文件流中。优选地,所述新的全量包索引文件中还包括:文件相对路径;其中,得到新的全量包之后,还包括:根据该新的全量包的全量包索引文件,依次获取与每个文件名称对应的资源文件以及该资源文件的文件相对路径;将获取到的资源文件存储至该资源文件的文件相对路径。本专利技术还提供了一种文件的处理方法,应用于服务器,包括:获取待打包的资源文件;根据待打包的资源文件的文件名称,生成索引文件;其中,所述索引文件中为每个待打包的资源文件预留位置信息存储空间;针对每个待打包的资源文件,确定该待打包的资源文件在数据包文件流中的起始位置和终止位置;将该待打包的资源文件在数据包文件流中的起始位置和终止位置存储至为该待打包的资源文件预留的位置信息存储空间;将该待打包的资源文件加入数据包文件流中;返回执行针对每个待打包的资源文件,确定该待打包的资源文件在数据包文件流中的起始位置和终止位置的步骤及其后续步骤;直至完成将每个待打包的资源文件全部加入数据包文件流,得到打包后的数据包。本专利技术还提供了一种文件的处理装置,应用于客户端,包括:第一获取单元,用于获取增量包文件流;其中,所述增量包文件流包括增量包索引文件和至少一个资源文件,所述增量包索引文件中存储有文件名称、文件位置信息,文件名称与文件位置信息之间存在对应关系;第二获取单元,用于根据文件名称以及与文件名称对应的文件位置信息,从所述增量包文件流中获取与每个文件名称对应的资源文件,直至获取到所述增量包索引文件中存储的全部文件名称对应的资源文件;第三获取单元,用于获取本地全量包的全量包索引文件;判断单元,用于依次判断增量包索引文件中的每个文件名称是否在全量包索引文件的文件名称中存在相同的文件名称;更新单元,用于若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中存在相同的文件名称,则利用从增量包文件流中获取到的与该文件名称对应的资源文件,更新本地全量包中与该文件名称相同的文件名称对应的资源文件;添加单元,用于若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中不存在相同的文件名称,则将从增量包文件流中获取到的与该文件名称对应的资源文件添加到本地全量包的资源文件中;打包单元,用于根据本地全量包的资源文件,打包生成新的全量包。优选地,所述打包单元包括:获取子单元,用于获取本地全量包中包括的每个资源文件的文件名称;生成子单元,用于根据文件名称生成新的全量包索引文件;其中,新的全量包索引文件中为每个资源文件预留位置信息存储空间;确定子单元,用于针对每个资源文件,确定该资源文件在全量包文件流中的起始位置和终止位置;存储子单元,用于将该资源文件在全量包文件流中的起始位置和终止位置存储至为该资源文件预留的位置信息存储空间;加入子单元,用于将该资源文件加入全量包文件流中,调用所述确定子单元,直至完成将每个资源文件全部加入全量包文件流,得到新的全量包。优选地,还包括:解包单元,用于根据该新的全量包的全量包索引文件,依次获取与每个文件名称对应的资源文件以及该资源文件的文件相对路径;将获取到的资源文件存储至该资源文件的文件相对路径。本专利技术还提供了一种文件的处理装置,应用于服务器,包括:第四获取单元,用于获取待打包的资源文件;生成单元,用于根据待打包的资源文件的文件名称,生成索引文件;其中,所述索引文件中为每个待打包的资源文件预留位置信息存储空间;确定单元,用于针对每个待打包的资源文件,确定该待打包的资源文件在数据包文件流中的起始位置和终止位置;存储单元,用于将该待打包的资源文件在数据包文件流中的起始位置和终止位置存储至为该待打包的资源文件预留的位置信息存储空间;加入单元,用于将该待打包的资源文件加入数据包文件流中,调用所述确定单元,直至完成将每个待打包的资源文件全部加入数据包文件流,得到打包后的数据包。本专利技术还提供了一种文件的处理系统,包括:客户端以及与客户端连接的服务器;其中,所述客户端应用如上所述的文件的处理方法,所述服务器应用如上所述的文件的处理方法。与现有技术相比,本专利技术提供的上述技术方案具有如下优点:从上述技术方案可知,本申请中增量包文件流包括增量包索引文件和至少一个资源文件,所述增量包索引文件中存储有文件名称、文件位置信息,文件名称与本文档来自技高网...

【技术保护点】
1.一种文件的处理方法,其特征在于,应用于客户端,包括:获取增量包文件流;其中,所述增量包文件流包括增量包索引文件和至少一个资源文件,所述增量包索引文件中存储有文件名称、文件位置信息,文件名称与文件位置信息之间存在对应关系;根据文件名称以及与文件名称对应的文件位置信息,从所述增量包文件流中获取与每个文件名称对应的资源文件,直至获取到所述增量包索引文件中存储的全部文件名称对应的资源文件;获取本地全量包的全量包索引文件;依次判断增量包索引文件中的每个文件名称是否在全量包索引文件的文件名称中存在相同的文件名称;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中存在相同的文件名称,则利用从增量包文件流中获取到的与该文件名称对应的资源文件,更新本地全量包中与该文件名称相同的文件名称对应的资源文件;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中不存在相同的文件名称,则将从增量包文件流中获取到的与该文件名称对应的资源文件添加到本地全量包的资源文件中;根据本地全量包的资源文件,打包生成新的全量包。

【技术特征摘要】
1.一种文件的处理方法,其特征在于,应用于客户端,包括:获取增量包文件流;其中,所述增量包文件流包括增量包索引文件和至少一个资源文件,所述增量包索引文件中存储有文件名称、文件位置信息,文件名称与文件位置信息之间存在对应关系;根据文件名称以及与文件名称对应的文件位置信息,从所述增量包文件流中获取与每个文件名称对应的资源文件,直至获取到所述增量包索引文件中存储的全部文件名称对应的资源文件;获取本地全量包的全量包索引文件;依次判断增量包索引文件中的每个文件名称是否在全量包索引文件的文件名称中存在相同的文件名称;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中存在相同的文件名称,则利用从增量包文件流中获取到的与该文件名称对应的资源文件,更新本地全量包中与该文件名称相同的文件名称对应的资源文件;若判断增量包索引文件中的文件名称在全量包索引文件中的文件名称中不存在相同的文件名称,则将从增量包文件流中获取到的与该文件名称对应的资源文件添加到本地全量包的资源文件中;根据本地全量包的资源文件,打包生成新的全量包。2.根据权利要求1所述的方法,其特征在于,所述根据本地全量包的资源文件,打包生成新的全量包包括:获取本地全量包中包括的每个资源文件的文件名称;根据文件名称生成新的全量包索引文件;其中,新的全量包索引文件中为每个资源文件预留位置信息存储空间;针对每个资源文件,确定该资源文件在全量包文件流中的起始位置和终止位置;将该资源文件在全量包文件流中的起始位置和终止位置存储至为该资源文件预留的位置信息存储空间;将该资源文件加入全量包文件流中;返回执行针对每个资源文件,确定该资源文件在全量包文件流中的起始位置和终止位置的步骤及其后续步骤,直至完成将每个资源文件全部加入全量包文件流,得到新的全量包。3.根据权利要求2所述的方法,其特征在于,所述依次将每个资源文件加入全量包文件流中包括:获取每个资源文件的压缩标识;若所述压缩标识表示压缩,则利用压缩插件压缩该资源文件;将压缩后的该资源文件加入全量包文件流中。4.根据权利要求2或3所述的方法,其特征在于,所述新的全量包索引文件中还包括:文件相对路径;其中,得到新的全量包之后,还包括:根据该新的全量包的全量包索引文件,依次获取与每个文件名称对应的资源文件以及该资源文件的文件相对路径;将获取到的资源文件存储至该资源文件的文件相对路径。5.一种文件的处理方法,其特征在于,应用于服务器,包括:获取待打包的资源文件;根据待打包的资源文件的文件名称,生成索引文件;其中,所述索引文件中为每个待打包的资源文件预留位置信息存储空间;针对每个待打包的资源文件,确定该待打包的资源文件在数据包文件流中的起始位置和终止位置;将该待打包的资源文件在数据包文件流中的起始位置和终止位置存储至为该待打包的资源文件预留的位置信息存储空间;将该待打包的资源文件加入数据包文件流中;返回执行针对每个待打包的资源文件,确定该待打包的资源文件在数据包文件流中的起始位置和终止位置的步骤及其后续步骤;直至完成将每个待打包的资源文件全部加入数据包文件流,得到打包后的数...

【专利技术属性】
技术研发人员:边雅军江贵林
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京,11

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

1