本发明涉及计算机文件更新技术领域,尤其涉及一种数据自动更新方法及系统。
背景技术:
现有的更新技术中,在更新过程中,需要对一个文件进行比对,这种做法严重降低了效率,浪费更新时间。更新执行操作过程中,往往需要数十秒甚至更长的时间,如果这段时间出现断网或磁盘扇区错误,则更新过程就会中断,导致更新失败,因此,在在网络环境不好或电脑硬件较差时,会出现更新失败率较高。
名词解释:即message-digestalgorithm5(信息-摘要算法5),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又译摘要算法、哈希算法),主流编程语言普遍已有md5实现。将数据(如汉字)运算为另一固定长度值,是杂凑算法的基础原理。
技术实现要素:
为了解决上述技术问题,本发明的目的是提供一种高效率的数据更新方法。
本发明的另一目的是提供一种高效率的数据更新更新系统。
本发明所采用的第一技术方案是:
一种数据自动更新方法,包括以下步骤:
s1、获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值;
s2、比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
进一步,还包括上传第二压缩文件的步骤:
获取最新文件,并对最新文件进行压缩后获得第二压缩文件;
将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
进一步,步骤s1中所述获取服务器上的第二压缩文件的第二md5值的步骤,具体为:
从服务器上获得与第一压缩文件相对应的第二压缩文件后,根据第二压缩文件从预设文档中直接获取第二md5值。
进一步,步骤s2中所述下载第二压缩文件至需要更新电脑并执行更新操作的步骤,具体为:
将第二压缩文件下载至电脑后,解压至临时目录下,并根据解压后的第二压缩文件批量替换需要更新的文件。
本发明所采用的第二技术方案是:
一种数据自动更新系统,该系统包括:
获取模块,用于获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值;
比对模块,用于比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
进一步,该系统还包括:
上传模块,用于获取最新文件,并对最新文件进行压缩后获得第二压缩文件;
记录模块,用于将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
进一步,所述获取模块,获取第二md5值时,具体用于:
从服务器上获得与第一压缩文件相对应的第二压缩文件后,根据第二压缩文件从预设文档中直接获取第二md5值。
进一步,所述比对模块,执行更新操作时,具体用于:
将第二压缩文件下载至电脑后,解压至临时目录下,并根据解压后的第二压缩文件批量替换需要更新的文件。
本发明所采用的第三技术方案是:
一种数据自动更新系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器用于执行以下步骤:
获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值;
比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
进一步,还用于执行以下步骤:
获取最新文件,并对最新文件进行压缩后获得第二压缩文件;
将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
本发明的有益效果是:本发明通过比对第一md5值和第二md5值来判断是否需要进行更新,而无需对每个文件进行对比,由于md5比对速度快,因此提升了数据更新的效率,同时通过直接下载压缩文件后进行更新,降低了更新失败率。
附图说明
图1是本发明一种数据自动更新方法的步骤流程图;
图2是本发明一种数据自动更新系统的结构框图。
具体实施方式
实施例一
如图1所示,一种数据自动更新方法,包括以下步骤:
a1、获取最新文件,并对最新文件进行压缩后获得第二压缩文件。
a2、将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
a3、获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值。
a4、比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
上述方法中,先将最新的文件进行压缩后,获得第二压缩文件,将第二压缩上传至服务器,比如某种软件文件,将其压缩成软件包上传服务器。服务器在接收到第二压缩文件后,通过相应的应用程序读取第二压缩文件的第二md5值,并将该第二md5值保存记录在预设文档中。获取到待更新的电脑的第一压缩文件的第一md5值后,将第一md5值与第二md5值进行比对,判断二者是否一致,由于md5值仅有一行文本,因此可以快速的完成比对,电脑中运行的软件或者相关文件,都是存有其压缩包的,所以直接获取到该压缩包,并通过常规的技术读取压缩包的md5值即可。如果比对结果为二者一致,则说明第一压缩文件与第二压缩文件相同,则为最新文件,无需更新,不执行更新操作。如果比对结果为二者不一致,则说明第一压缩文件为旧文件,需要更新,直接将第二压缩文件下载至电脑后,再进行更新操作,由于直接将第二压缩文件下载至电脑再进行更新,而不是在线下载需要替换的文件,并一边下载一边替换,如此浪费更新的时间,如果网速不稳定或者磁盘扇区错误,也会出现更新失败等问题,因此提高了更新质量和效率,降低了更新失败率。
进一步作为优选的实施方式,步骤a3中所述获取服务器上的第二压缩文件的第二md5值的步骤,具体为:从服务器上获得与第一压缩文件相对应的第二压缩文件后,根据第二压缩文件从预设文档中直接获取第二md5值。
由于服务器与多台电脑对接,将第二md5值直接记录在文档中,无需每次比对读取第二md5值的操作,因此提升了更新的效率。
进一步作为优选的实施方式,步骤a4中所述下载第二压缩文件至需要更新电脑并执行更新操作的步骤,具体为:
将第二压缩文件下载至电脑后,解压至临时目录下,并根据解压后的第二压缩文件批量替换需要更新的文件。
将第二压缩文件直接下载至电脑后,对其进行解压,比如某款软件,再将解压后的文件批量替换电脑中原来软件的文件,比如执行批量替换操作,有时需要更替的文件只有几个,但是传统发更新方法中,需要对所有的文件进行比对一次,并将不一样的文件进行更换,其实大多文件是一样的,无需进行替换,但是仍需花费大量的时间进行扫描比对,极大地浪费了更新的时间,而本方法中,直接比对完md5值后,如果md5值不一致,就直接下载第二压缩包,并解压第二压缩包后,批量的替换,避免了每个文件的比对,极大地提升了更新的效率。
上述方法中,通过直接比压缩文件的md5值来判断电脑中的数据文件是否为最新的文件,并在判断数据文件不为最新文件时,将服务器中的第二压缩文件下载至电脑,并在电脑中进行解压后,批量替换文件,从而使电脑的数据文件为最新的文件。该方法中,因为无需将数据中每个文件都进行对比,极大地提升了比对的效率,由于比对的时间和下载第二压缩包的时间相对比较少,也因此提升了更新的成功率。
实施例二
如图2所示,一种数据自动更新系统,该系统包括:
获取模块,用于获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值;
比对模块,用于比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
上述系统的工作原理为:在服务器中存有多种最新的数据文件,当服务器与电脑连接后,先判断电脑里的数据文件是否为最新文件,本系统中通过比对电脑中第一压缩文件的第一md5值和服务器中第二压缩文件的第二md5值来进行判断,当二个md5值不一致时,则说明这电脑里的数据文件位旧文件,需要更新。更新步骤为:直接将第二压缩文件下载至电脑后,再执行更新操作。由于比对过程中,只需比对md5值,而md5值只是一行脚本,因此可以快速的完成比对,得出是否需要更新的结果,而不是在联网的情况下,进行每个文件的比对,而每个文件比对过程中,存有较多的文件是相同的,只有少部分的文件是不同且需要更换的,因此大大地浪费了更新的时间,也由于需要长时间的联网,降低了更新的成功率。而通过本系统,能够快速比对,无需长时间联网比对,故提高了更新效率和质量。
进一步作为优选的实施方式,该系统还包括:
上传模块,用于获取最新文件,并对最新文件进行压缩后获得第二压缩文件;
记录模块,用于将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
进一步作为优选的实施方式,所述获取模块,获取第二md5值时,具体用于:
从服务器上获得与第一压缩文件相对应的第二压缩文件后,根据第二压缩文件从预设文档中直接获取第二md5值。
进一步作为优选的实施方式,所述比对模块,执行更新操作时,具体用于:
将第二压缩文件下载至电脑后,解压至临时目录下,并根据解压后的第二压缩文件批量替换需要更新的文件。
本实施例的一种数据自动更新系统,可执行本发明方法实施例所提供的一种数据自动更新方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
实施例三
一种数据自动更新系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器用于执行以下步骤:
获取电脑上的第一压缩文件的第一md5值,以及从服务器上获取与第一压缩文件相对应的第二压缩文件的第二md5值;
比对第一md5值与第二md5值是否一致,若一致,结束更新操作;反之,下载第二压缩文件至电脑并执行更新操作。
进一步作为优选的实施方式,还用于执行以下步骤:
获取最新文件,并对最新文件进行压缩后获得第二压缩文件;
将第二压缩文件上传至服务器后,通过预设的应用程序读取第二压缩文件的第二md5值,并将第二md5值记录于服务器的预设文档中。
本实施例的一种数据自动更新系统,可执行本发明方法实施例所提供的一种数据自动更新方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。