一种文件同步的方法

文档序号:6360662阅读:186来源:国知局
专利名称:一种文件同步的方法
技术领域
本发明涉及计算机网络技术领域,特别是指一种文件同步的方法。
背景技术
目前随着计算机和网络的普及,数字设备也越来越丰富,例如个人电脑(PC)、笔记本电脑(Note Book)、个人数字助理(PDA)、手机、机顶盒、mp3、数字相机以及数字摄像机等,用户操作多个设备的可能性越来越大,而这些设备往往运行在不同的操作系统上,如Windows9x、Windows2000、WindowsXP、WindowsCE、UNIX或Linux等,如何使不同设备上的文件或文件夹中的内容保持一致成为用户经常遇到的问题。
目前使不同设备上的文件或文件夹保持同步的做法是用户利用网络或外部设备如软盘,光盘,USB盘等,从某个设备中拷贝出文件或文件夹,然后将该文件或文件夹拷贝到待同步的设备上。这种方法最大的缺点是需要用户的全程干预,由于这些工作相当繁琐且易出错,这就使得如何使设备间的文件或文件夹保持同步逐渐成为用户头疼的问题。

发明内容
有鉴于此,本发明提供一种文件同步的方法,用户只要使同步目标与同步源之间建立起连接关系,同步目标上的被同步文件与同步源上的同步文件即可实现智能同步。
为达到上述目的,本发明的技术方案是这样实现的一种文件同步的方法,该方法至少包括以下步骤a、保存同步文件的属性信息和被同步文件的同步记录,并设置同步规则;
b、同步文件与被同步文件建立连接后,判断同步文件的属性信息与同步记录中的相关信息是否一致,如果是,则结束同步操作,否则将复制的同步文件替换被同步文件。
较佳地,所述步骤a进一步包括定时检查同步文件是否被更新,该检查至少包括以下步骤a1、读取所保存的同步文件属性信息中的时间信息以及同步文件本身属性中的时间信息;a2、判断同步文件本身属性中的时间信息是否与所保存的同步文件属性信息中的时间信息相同,如果是,则执行步骤a3,否则更新所保存的同步文件属性信息后,执行步骤a3;a3、等待一段时间后重复执行步骤a1。
较佳地,步骤b所述判断是指判断同步文件属性信息中的记录是否存在于同步记录中,如果不存在则将复制的同步文件保存为被同步文件,否则判断同步文件属性信息中的更改记录与同步记录中的更改记录是否相同,如果是,则结束同步操作,否则将复制的同步文件替换被同步文件。
较佳地,所述同步文件的属性信息至少包括用户所选同步文件的绝对路径名、相对路径文件名、文件更改时间和修改类型;所述同步记录中至少包括同步源文件的位置、同步目标文件的位置、同步时间以及同步状态。
较佳地,所述的同步文件属性信息中的更改记录为文件更改时间;所述的同步记录中的更改记录为同步时间。
较佳地,步骤b所述用同步文件替换被同步文件之前进一步包括判断被同步文件是否符合同步规则,如果是,则用复制的同步文件替换被同步文件,并更新同步记录后,结束同步操作,否则直接结束同步操作。
较佳地,所述同步规则由以下一条或一条以上规则组成被同步文件是否与同步源上子目录中的文件保持同步;被同步文件是否与同步源上新增加的文件保持同步;被同步文件是否与同步源上已修改的文件保持同步;被同步文件是否与同步源上已删除的文件保持同步;每次执行同步操作时,有让用户选择是否执行同步的提示,由用户选择确认后再执行同步操作,还是同步目标每次自动执行同步操作。
较佳地,所述同步文件位于同步源上,所述被同步文件位于同步目标上,同步源与同步目标为不同的硬件设备。
较佳地,同步目标通过红外方式,或网络方式,或USB端口与同步源建立连接。
较佳地,该方法进一步包括建立一个由同步源维护的同步目标链表,该同步目标链表中至少包括所有与同步源相连的同步目标的用户名以及该同步目标所要使用的同步源上的同步文件的信息;当同步源接收到同步目标发送的退出消息后,更新同步目标链表的内容。
较佳地,所述同步文件与被同步文件位于同一个硬件设备上。
较佳地,同步文件的属性信息保存为日志文件。
较佳地,所述日志文件和同步记录采用替换方式或累加方式进行记录。
较佳地,所述同步文件是一个文件,或是一个目录;所述被同步文件是一个文件,或是一个目录。
应用本发明,当同步目标与同步源建立起连接后,同步目标上的被同步文件能够按照一定的同步规则与同步源上的同步文件自动保持同步,从而使用户不必考虑同步源与同步目标所在的硬件设备及所应用的操作系统。并且,由于同步目标上的被同步文件都将按照用户所设定的同步规则进行同步操作,因此,用户只需更改同步规则,即可对被同步文件实现不同方式的智能管理。应用本发明不用增加任何新的硬件配置,且操作简单,使用方便。


图1所示为应用本发明的选择同步文件的流程图;图2所示为应用本发明的判断同步文件是否更新的流程图;图3所示为应用本发明的同步目标与同步源为不同设备时建立连接的流程图;图4所示为应用本发明的执行同步操作的流程图。
具体实施例方式
为使本发明的目的、技术方案及优点更加清楚,以下参照附图并举实施例,对本发明做进一步详细说明。
本实施例中所说的设备是指一切可以进行数据交换的设备,包括服务器、台式机、笔记本、PDA、外设等以及一些智能家电等。上述设备分为两类,将文件同步的标准所在的设备定义为同步源,将待同步的文件所在的设备定义为同步目标。这两类设备可以分别存在不同的硬件设备上,也可以在同一个硬件设备上。例如同步源在台式计算机上,同步目标在PDA或笔记本电脑上;或者同步源和同步目标同在一台计算机上,但为该计算机上的两个不同的目录或文件。
同步源上提供的标准文件被称为同步文件,同步目标上设置的要与同步文件保持一致的文件称为被同步文件。
同步源提供同步功能,使同步目标上的被同步文件与同步源上的同步文件保持一致。同步目标使用同步功能,使本设备或其它与本设备相连的设备上的文件自动与同步源保持一致。
本发明的思路是在同步源上选择同步文件,并将同步文件的属性信息保存为日志文件;在同步目标上设置同步规则;当同步目标与同步源建立连接后,执行同步操作,使被同步文件自动更新,即复制同步源上的同步文件,替换同步目标上的被同步文件,从而使得被同步文件与同步文件保持一致。
图1所示为应用本发明的选择同步文件的流程图。
步骤101,用户选择同步文件,该同步文件可以是一个文件,也可以是一个目录,该目录中可能包含子目录;步骤102,同步源读取用户所选择的同步文件的属性信息,所述同步文件的属性至少包括用户所选同步文件的绝对路径名、相对路径文件名、文件更改时间和修改类型;步骤103,同步源将同步文件的属性信息写入日志文件,并保存该日志文件。
同步文件的日志文件如表1所示

表1日志文件的内容至少包括所选择的同步文件的绝对路径名、相对路径文件名、文件更改时间和修改类型。该日志记录采用替换的记录方式,对同一个同步文件在日志文件中只保存一条记录,即如果一个同步文件发生了变化,那么直接修改日志文件中的该条记录,而不再创建一条新记录。如表1所示记录1表示用户在2003-4-2 12:20选择d\work\work.doc为同步文件,该同步文件的绝对路径名为d\work,相对路径文件名为work.doc,由于是用户选择该文件为同步文件,因此文件更改时间为选择该同步文件的时间,修改类型为创建,如果用户在以后对该同步文件作修改,则其文件更改时间为该文件的修改时间,修改类型为修改。记录2表示用户在2002-4-2 12:20修改过已选择的同步文件,由于该同步文件是一个目录,且该目录中有子目录,则该同步文件的绝对路径名为d\work,相对路径名为\simple\study.doc,文件更改时间为该文件的修改时间,修改类型为修改。
上述日志的记录方式也可采用累加的记录方式,即将每个同步文件每次发生的变化都记录在日志中,而不采用替换的方式。
同步目标上所设置的同步规则可以是以下规则中的一条或一条以上1)同步目标上的被同步文件是否与同步源上子目录中的文件保持同步;2)同步目标上的被同步文件是否与同步源上新增加的文件保持同步;3)同步目标上的被同步文件是否与同步源上已修改的文件保持同步;
4)同步目标上的被同步文件是否与同步源上已删除的文件保持同步;5)同步目标在每次执行同步操作的时候,有让用户选择是否执行同步的提示,由用户选择确认后再执行同步操作,还是同步目标每次自动执行同步操作。
图2所示为应用本发明的判断同步文件是否更新的流程图。
步骤201,在同步源上启动检测线程;步骤202,读取日志文件中的文件更改时间信息;步骤203,读取同步文件本身属性的修改时间信息;步骤204,判断同步文件本身属性中的修改时间是否与日志文件中的文件更改时间相同,如果是,则执行206,否则执行步骤205;步骤205,更新日志文件记录;步骤206,检测线程等待一段时间后,如10分钟,重复执行步骤202。
如果同步目标与同步源在不同的硬件设备上,则同步目标与同步源建立连接的步骤如图3所示。
步骤301,同步目标判断本设备或与本设备相连的设备是否通过红外方式与同步源进行连接,如果是,则执行步骤302,否则执行步骤303;步骤302,启动红外连接端口后,执行步骤307;步骤303,同步目标判断本设备或与本设备相连的设备是否通过网络与同步源进行连接,如果是,则执行步骤304,否则执行步骤305;步骤304,启动网络连接端口后,执行步骤307;步骤305,同步目标判断本设备是否通过USB端口与同步源进行连接,如果是,则执行步骤306,否则执行步骤307;步骤306,启动USB连接端口后,执行步骤307;步骤307,同步目标判断本设备或与本设备相连的设备是否找到同步源,如果是,则向同步源发送请求连接的消息后,执行步骤308,否则结束同步连接;
步骤308,同步目标根据同步源的响应信息判断同步源是否同意连接,如果是,则与同步源建立连接,否则结束建立同步连接。
如果同步目标与同步源在同一个硬件设备上,则同步目标上的被同步文件与同步源上的同步文件通过链接或其它方式连接。(最好能否补充具体的当同步目标退出连接时,发送退出消息给同步源,同步源接收到该消息后更新同步目标链表。
同步目标与同步源建立连接后,如果同步目标与同步源在不同的硬件设备上,则同步目标所维护的同步记录表如表2所示

表2该同步记录表中记载了同步源文件的位置、同步目标文件的位置、同步时间以及同步状态。其采用的替换的记录方式,对同一个同步文件的同步记录只保存一条记录,即如果一个同步文件的记录有变化,那么直接修改同步记录中的该记录,而不再创建一条新记录。如表2所示记录1表示在2002-4-2 12:20,IP地址为11.1.38.3的同步目标上的e\new\work.doc文件曾执行同步操作,该同步操作是与IP地址为10.1.38.2的同步源上的d\work\work.doc文件保持一致,由于同步状态为已同步,表示该同步操作执行成功。记录2表示在2003-1-2 12:25,IP地址为11.1.38.3的同步目标上的e\new\sub\mydoc.doc目录曾执行同步操作,该同步操作是与IP地址为10.1.38.2的同步源上的d\work目录中的内容保持一致,由于其同步状态为已同步,则表示该同步操作也执行成功。如果某次同步操作未成功,其同步状态则记录为未同步。
同步目标与同步源建立连接后,如果同步目标与同步源在同一硬件设备上,则同步目标所维护的同步记录表如表3所示

表3表3的记录1表示在2002-5-2 12:20,IP地址为10.1.38.2的同步目标上的e\new\work.doc文件曾执行同步操作,该同步操作是与IP地址为10.1.38.2的同步源上的d\work\work.doc文件保持一致,由于同步状态为已同步,表示该同步操作执行成功。记录2表示在2003-3-2 12:25,IP地址为10.1.38.2的同步目标上的e\new\sub\mydoc.doc目录曾执行同步操作,该同步操作是与IP地址为10.1.38.2的同步源上的d\work目录中的内容保持一致,由于其同步状态为已同步,则表示该同步操作也执行成功。如果某次同步操作未成功,其同步状态则记录为未同步。
如果同步目标与同步源在同一硬件设备上且该设备未上网,则该设备的缺省的IP地址为127.0.0.1。
由上述可知,如同步目标文件中的IP地址和同步源文件上的IP地址相同,则同步源和同步目标表示在一个硬件设备上,否则,它们在不同的硬件设备上。
表2表3的记录方式也可采用累加的记录方式,即将每个同步文件每次发生的变化都记录在同步记录中,而不采用替换的方式。
图4所示为应用本发明的执行同步操作的流程图。
步骤401,在同步目标与同步源建立起连接关系后,同步目标接收同步源发送来的包含日志文件的数据信息的消息;步骤402,同步目标读取本设备或与本设备相连的设备上的同步记录;步骤403,判断日志文件的中的记录是否存在于同步记录中,如果是,则执行步骤404,否则执行步骤405;步骤404,判断日志文件的文件更改时间是否小于同步记录上的同步时间,如果是,则执行步骤405,否则结束同步操作;步骤405,判断同步目标上的被同步文件是否符合同步规则,如果是,则执行步骤406,否则结束同步操作;步骤406,复制同步源上的同步文件,替换同步目标上的被同步文件;步骤407,更新同步记录后,结束同步操作。
以上所述的实施例均是以文件的修改时间为是否进行更新或同步操作的基础,当然,也可以文件的大小,或以文件的修改时间和大小为是否进行更新或同步操作的基础。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本实用新型的保护范围之内。
权利要求
1.一种文件同步的方法,其特征在于该方法至少包括以下步骤a、保存同步文件的属性信息和被同步文件的同步记录,并设置同步规则;b、同步文件与被同步文件建立连接后,判断同步文件的属性信息与同步记录中的相关信息是否一致,如果是,则结束同步操作,否则将复制的同步文件替换被同步文件。
2.根据权利要求1所述的方法,其特征在于,所述步骤a进一步包括定时检查同步文件是否被更新,该检查至少包括以下步骤a1、读取所保存的同步文件属性信息中的时间信息以及同步文件本身属性中的时间信息;a2、判断同步文件本身属性中的时间信息是否与所保存的同步文件属性信息中的时间信息相同,如果是,则执行步骤a3,否则更新所保存的同步文件属性信息后,执行步骤a3;a3、等待一段时间后重复执行步骤a1。
3.根据权利要求1所述的方法,其特征在于,步骤b所述判断是指判断同步文件属性信息中的记录是否存在于同步记录中,如果不存在则将复制的同步文件保存为被同步文件,否则判断同步文件属性信息中的更改记录与同步记录中的更改记录是否相同,如果是,则结束同步操作,否则将复制的同步文件替换被同步文件。
4.根据权利要求1或2或3所述的方法,其特征在于,所述同步文件的属性信息至少包括用户所选同步文件的绝对路径名、相对路径文件名、文件更改时间和修改类型;所述同步记录中至少包括同步源文件的位置、同步目标文件的位置、同步时间以及同步状态。
5.根据权利要求4所述的方法,其特征在于,所述的同步文件属性信息中的更改记录为文件更改时间;所述的同步记录中的更改记录为同步时间。
6.根据权利要求1或3所述的方法,其特征在于,步骤b所述用同步文件替换被同步文件之前进一步包括判断被同步文件是否符合同步规则,如果是,则用复制的同步文件替换被同步文件,并更新同步记录后,结束同步操作,否则直接结束同步操作。
7.根据权利要求6所述的方法,其特征在于,所述同步规则由以下一条或一条以上规则组成被同步文件是否与同步源上子目录中的文件保持同步;被同步文件是否与同步源上新增加的文件保持同步;被同步文件是否与同步源上已修改的文件保持同步;被同步文件是否与同步源上已删除的文件保持同步;每次执行同步操作时,有让用户选择是否执行同步的提示,由用户选择确认后再执行同步操作,还是同步目标每次自动执行同步操作。
8.根据权利要求1或3所述的方法,其特征在于,所述同步文件位于同步源上,所述被同步文件位于同步目标上,同步源与同步目标为不同的硬件设备。
9.根据权利要求8所述的方法,其特征在于,同步目标通过红外方式,或网络方式,或USB端口与同步源建立连接。
10.根据权利要求8所述的方法,其特征在于该方法进一步包括建立一个由同步源维护的同步目标链表,该同步目标链表中至少包括所有与同步源相连的同步目标的用户名以及该同步目标所要使用的同步源上的同步文件的信息;当同步源接收到同步目标发送的退出消息后,更新同步目标链表的内容。
11.根据权利要求1或3所述的方法,其特征在于,所述同步文件与被同步文件位于同一个硬件设备上。
12.根据权利要求1所述的方法,其特征在于同步文件的属性信息保存为日志文件。
13.根据权利要求12所述的方法,其特征在于所述日志文件和同步记录采用替换方式或累加方式进行记录。
14.根据权利要求1所述的方法,其特征在于,所述同步文件是一个文件,或是一个目录;所述被同步文件是一个文件,或是一个目录。
全文摘要
本发明提供了一种文件同步的方法,该方法至少包括以下步骤a.保存同步文件的属性信息和被同步文件的同步记录,并设置同步规则;b.同步文件与被同步文件建立连接后,判断同步文件的属性信息与同步记录中的相关信息是否一致,如果是,则结束同步操作,否则将复制的同步文件替换被同步文件。应用本发明,当同步目标与所同步源建立起连接后,同步目标上的被同步文件能够按照一定的同步规则与同步源上的同步文件自动保持同步,即文件实现智能同步,用户只需修改同步规则,可实现对被同步文件的智能管理。
文档编号G06F12/00GK1549130SQ03130638
公开日2004年11月24日 申请日期2003年5月6日 优先权日2003年5月6日
发明者王卫, 陈长征, 王震宇, 王 卫 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1