主权项 |
1.一种基于移动存储设备的文件级同步方法,其特征在于:本发明的目的是这样实现的:设源计算机设备上待同步用户文件夹F包含了m个文件,分别表示为f<sub>1</sub>、f<sub>2</sub>、...、f<sub>m</sub>,各文件对应的哈希值分别表示为h<sub>1</sub>、h<sub>2</sub>、...、h<sub>m</sub>;设可移动存储设备c,同步的文件夹F<sup>*</sup>中包含的所有文件<img file="FSA00000684295700011.GIF" wi="367" he="51" />当用户在计算机设备上插入或退出可移动存储设备c时,对于<img file="FSA00000684295700012.GIF" wi="245" he="50" />同步程序为计算机中文件夹F中文件f<sub>i</sub>生成一个哈希值h<sub>i</sub>,并和c中所存储的文件f<sub>i</sub>各历史版本的哈希值进行比对,若没找到相同的哈希值,则说明计算机设备上的文件f<sub>i</sub>是最新版本,用文件f<sub>i</sub>替换c上旧版本文件<img file="FSA00000684295700013.GIF" wi="66" he="53" />同时哈希值h<sub>i</sub>保存到c的数据库中,并标记为最新版本哈希值;若在c中找到的哈希值不是c的数据库中多标记的最新版本哈希值,则c上的文件<img file="FSA00000684295700014.GIF" wi="48" he="53" />是最新版本,用文件<img file="FSA00000684295700015.GIF" wi="48" he="53" />替换计算机上的旧版本文件f<sub>i</sub>;重复上述过程,直到文件夹F中所有文件处理完毕;其具体方法步骤为:(1)输入可移动媒介c;(2)输入待处理文件夹F,及F中所有文件形成的待处理文件队列f<sub>1</sub>、f<sub>2</sub>、...、f<sub>m</sub>;(3)取计算机设备待处理文件队列中的一个文件f<sub>i</sub>,根据文件f<sub>i</sub>的内容计算得到哈希值h<sub>i</sub>,并和可移动存储设备c上所存储的文件f<sub>i</sub>各历史版本的哈希值进行比对;(4)若没找到相同的哈希值,则说明计算机设备上的文件f<sub>i</sub>是最新版本,用文件f<sub>i</sub>替换c上旧版本文件<img file="FSA00000684295700016.GIF" wi="65" he="52" />同时哈希值h<sub>i</sub>保存到c的数据库中,并标记为最新版本哈希值,执行步骤(6);否则,执行步骤(5);(5)若在c中找到的哈希值不是c的数据库中多标记的最新版本哈希值,则c上的文件<img file="FSA00000684295700017.GIF" wi="48" he="52" />是最新版本,用文件<img file="FSA00000684295700018.GIF" wi="47" he="52" />替换计算机上的旧版本文件f<sub>i</sub>,执行步骤(6);否则,执行步骤(6);(6)将文件f<sub>i</sub>从待处理文件队列中移除;(7)若待处理文件队列不为空,执行步骤(3);否则,则程序执行完毕。 |