CN111190962A - 一种文件同步方法、装置及本地终端 - Google Patents

一种文件同步方法、装置及本地终端 Download PDF

Info

Publication number
CN111190962A
CN111190962A CN201911347498.8A CN201911347498A CN111190962A CN 111190962 A CN111190962 A CN 111190962A CN 201911347498 A CN201911347498 A CN 201911347498A CN 111190962 A CN111190962 A CN 111190962A
Authority
CN
China
Prior art keywords
file
identifier
local terminal
server
information list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911347498.8A
Other languages
English (en)
Other versions
CN111190962B (zh
Inventor
段馨宁
熊友军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ubtech Robotics Corp
Original Assignee
Ubtech Robotics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ubtech Robotics Corp filed Critical Ubtech Robotics Corp
Priority to CN201911347498.8A priority Critical patent/CN111190962B/zh
Publication of CN111190962A publication Critical patent/CN111190962A/zh
Application granted granted Critical
Publication of CN111190962B publication Critical patent/CN111190962B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请适用于通信技术领域,提供了一种文件同步方法,通过从服务端和本地终端中获取文件信息列表,将两者对应的文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表;根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,提高了同一账号在多个平台登录时文件同步的准确率,避免因同步操作错误覆盖文件而出现的数据丢失的问题。

Description

一种文件同步方法、装置及本地终端
技术领域
本申请属于通信技术领域,尤其涉及一种文件同步方法、装置及本地终端。
背景技术
用户使用同一账号在多个平台或终端登录,在终端本地下进行该账号下的文件创建、删除、修改等操作后,将终端本地的文件上传到远程服务端进行文件同步时,因为文件版本的冲突以及网络状态,导致文件同步的准确率较低,存在出现将当前终端的文件上传到服务端进行文件同步时,所上传的文件将会覆盖用户在其他终端上修改且上传到服务端的文件,导致数据丢失而影响到文件同步的准确率。
发明内容
本申请实施例提供了一种文件同步方法、装置及本地终端,可以解决现有技术中因文件版本冲突以及网络状态导致的同一账号在多个平台登录时文件同步的准确率较低的问题。
第一方面,本申请实施例提供了一种文件同步方法,包括:
在第一方面的第一种可能的实现方式中,分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
在第一方面的第二种可能的实现方式中,所述根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况,包括:
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含第一文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于本地终端,且不存在于服务端,所述第一文件修改时间为本地终端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间包含所述第一文件修改时间和第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且存在于本地终端,所述第二文件修改时间为服务端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含所述第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且不存在于本地终端。
在第一方面的第三种可能的实现方式中,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于本地终端,且不存在于服务端,则获取所述文件标识对应的文件的修改信息;
如果所述文件标识对应的文件被修改,则获取所述文件标识对应的文件的删除标识;
如果所述删除标识为未删除,则从本地终端中将所述文件标识对应的文件上传至服务端;
如果所述删除标识为已删除,或者所述文件标识对应的文件未被修改,则从本地终端中将所述文件标识对应的文件删除。
在第一方面的第四种可能的实现方式中,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于服务端,且存在于本地终端,则获取本地终端的文件的删除标识;
如果所述删除标识为已删除,且所述第一文件修改时间晚于所述第二文件修改时间,则从本地终端和服务端中将所述文件标识对应的文件删除;
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间相同,则获取在所述第一文件修改时间或所述第二文件修改时间之后的本地终端的文件的修改信息;
如果本地终端的文件被修改,则将修改后的本地终端的文件上传至服务端。
在第一方面的第五种可能的实现方式中,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,还包括:
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间不相同,则获取本地终端的文件的修改信息;
如果本地终端的文件被修改,则从服务端中下载所述文件标识对应的文件,并将下载的文件与本地终端修改后的文件进行内容合并;
将进行内容合并后得到本地终端的文件上传至服务端;
如果本地终端的文件未被修改,则从服务端中下载所述文件标识对应的文件。
在第一方面的第六种可能的实现方式中,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于服务端,且不存在于本地终端,则从服务端中下载所述文件标识对应的文件。
在第一方面的第七种可能的实现方式中,在从服务端中下载所述文件标识对应的文件时,或者在将本地终端的文件上传至服务端时,还包括:
更新所述第一文件信息列表和/或所述第二文件信息列表的文件修改时间。
第二方面,本申请实施例提供了一种文件同步装置,包括:
文件信息列表获取单元,用于分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
信息并集处理单元,用于将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
文件情况确定单元,用于根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
文件同步操作单元根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行
第三方面,本申请实施例提供了一种本地终端,包括:
文件信息列表获取单元,用于分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
信息并集处理单元,用于将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
文件情况确定单元,用于根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
文件同步操作单元根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括:
文件信息列表获取单元,用于分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
信息并集处理单元,用于将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
文件情况确定单元,用于根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
文件同步操作单元根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在本地终端上运行时,使得本地终端执行上述第一方面中任一项所述的文件同步方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:通过分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,提高了同一账号在多个平台登录时文件同步的准确率,避免因同步操作错误覆盖文件而出现的数据丢失的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种文件同步方法的实现流程图;
图2是本申请实施例提供的一种确定文件同步操作并执行的方法的具体实现流程图;
图3是本申请实施例提供的另一种确定文件同步操作并执行的方法的具体实现流程图;
图4是本申请实施例提供的一种文件同步装置的结构示意图;
图5是本申请实施例提供的一种本地终端的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定装置结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
现有技术中对某一告警事件的告警等级是预先设定好的,不同的告警等级进行不同的处理,然而,现有的告警等级没有考虑到告警的危害、影响程度以及时间等因素,没有动态的调整告警等级,比如告警事件本身的告警级别并不高,但由于其影响面积大或者影响其他关联的关键设备的正常运行,实际该告警事件的危害程度高于其预想的危害程度,而告警等级并没有发生调整,使得运营维护人员无法对动力环境监控装置中的设备实施更为有效的管理和维护。为了解决这一技术问题,本申请实施例提出了对告警事件的告警等级进行调整的方法,以根据告警事件直接影响的设备列表、设备之间的依赖关系和告警事件对设备的影响级别来调整告警事件的告警等级,提高告警等级的准确性,从而使得运营维护人员能够对动力环境监控装置中的设备实施更为有效的管理和维护。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。请参考图1,图1示出了本申请实施例提供的一种图像分析方法的实现流程,详述如下:
在步骤S101中,分别从服务端和本地终端中获取文件信息列表。
在本申请实施例中,服务端包括但不限于具有远程服务功能的远程服务器或者云端服务器,本地终端包括但不限于桌上型计算机、笔记本、掌上电脑及云平台等计算设备。文件信息列表中包含有文件的属性信息,该文件属性信息包括但不限于文件标识、文件修改时间。
用户在本地终端创建、删除、修改文件时,本地终端将在其文件信息列表中记录该文件的标识以及修改时间,在用户将该文件提交至服务端时,同时将文件的标识以及修改时间上传至服务端的文件信息列表中,这样,在本地终端中以及服务端中均存储有文件信息列表,并且对应的文件信息列表均包含有文件标识和文件修改时间。
需要说明的是,记录在文件信息列表中的文件修改时间为最近一次的修改时间。
在步骤S102中,将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表。
在本申请实施例中,将第一文件信息列表设定为从服务端获取的文件信息列表,第二文件信息列表设定为从本地终端中获取的文件信息列表,便于后续方便描述。
在本申请实施例中,为了保证本地终端的文件与服务端的文件同步,即使得本地终端的文件可以正确同步到服务端,在用户登录本地终端时,获取第一文件信息列表和第二文件信息列表,并将第一文件信息列表和第二文件信息列表,按照文件标识进行并集处理,使得具有同一文件标识的本地终端的文件修改时间与服务端的文件修改时间在同一文件标识下,
为便于说明,本申请实施例将第一文件修改时间设定为本地终端中所述文件标识对应的文件修改时间,第二文件修改时间设定为服务端中所述文件标识对应的文件修改时间,表1示出了本申请实施例提供的一种第三文件信息列表所包含的内容。
表1
文件标识 第一文件修改时间 第二文件修改时间
ID001 时间01 时间01
ID002 时间02 时间03
ID003 时间04
ID004 时间05
从表1中可以看出,第三文件信息列表中的文件标识具有唯一性,并且包含有第一文件修改时间和/或第二文件修改时间。
在步骤S103中,根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况。
在本申请实施例中,第三文件信息列表所包含的每个文件标识以及该文件标识对应的至少一个文件修改时间,确定该文件标识对应的文件情况,这里所指的文件情况为文件是否存在与服务端和/或本地终端中。
作为示例而非限定,步骤S103具体包括:
步骤S1031,如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含第一文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于本地终端,且不存在于服务端。
在本申请实施例中,如果某一文件标识对应的文件仅存在于本地终端,并不能直接将该文件上传到服务端,以保证本地终端与服务端的文件同步,还需要确认用户在其他的终端是否删除了该文件,再确定相应的文件同步操作并执行。
步骤S1032,如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间包含所述第一文件修改时间和第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且存在于本地终端。
在本申请实施例中,如果某一文件标识对应的文件同时存在于本地终端和服务端,则需要根据文件的修改时间的早晚来确定最终的文件同步操作。
步骤S1033,如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含所述第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且不存在于本地终端。
在本申请实施例中,如果某一文件标识对应的文件仅存在于服务端,这说明了在服务端的文件为最新版本的文件,可以从服务端中将该文件标识对应的文件下载到本地终端中以便于用户进行相应的文件操作。
在步骤S104中,根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
在本申请实施例中,文件同步操作包含但不限于从服务端中下载文件标识对应的文件,从本地终端中将文件标识对应的文件上传至服务端,将从服务端下载文件标识对应的文件与本地终端中修改后的文件标识对应的文件进行内容合并后上传至服务端。
请参考图2,图2示出了本申请实施例提供的一种确定文件同步操作并执行的方法的具体实现步骤,详述如下:
在步骤S201中,如果所述文件标识对应的文件存在于本地终端,且不存在于服务端,则获取所述文件标识对应的文件的修改信息。
在本申请实施例中,如果某一文件标识对应的文件存在于本地终端,但不存在于服务端,说明该文件有可能是用户新创建的,需要上传到服务端的文件;或者说明该文件有可能是用户在其他终端登录后对该文件进行了删除操作,因此需要获取该文件标识对应的文件的修改信息,从而确定是从本地终端中将该文件删除还是从本地终端中将该文件上传至服务端。
在步骤S202中,如果所述文件标识对应的文件被修改,则获取所述文件标识对应的文件的删除标识。
在本申请实施例中,当文件标识对应的文件存在本地终端,且通过修改记录确认该文件被修改后,则要通过删除标识来确认该文件有没有被删除,从而确定是从本地终端中将该文件删除还是从本地终端中将该文件上传至服务端。
在步骤S203中,如果所述删除标识为未删除,则从本地终端中将所述文件标识对应的文件上传至服务端。
在本申请实施例中,当用户在本地终端中对某一文件进行删除操作时,如果当前本地终端处于无网络状态,即本地终端不能及时将该文件的修改记录及时同步到服务端以通知服务端删除该文件时,将所删除的文件的删除标识更改为已删除,以便于网络接通状态下同步删除该文件。
需要说明的是,删除标识为预先设定的一个标识,比如可以将其设定为数值0或1,或者设定为真或假,并将其中任意一个标识对应为已删除,另外一个标识对应为未删除。
在本申请实施例中,如果文件标识对应的文件存在本地终端,且文件对应的删除标识为未删除,说明该文件为新创建的文件,需要将其同步至服务端中,因此,从本地终端中将该文件标识对应的文件上传至服务端。
在步骤S204中,如果所述删除标识为已删除,或者所述文件标识对应的文件未被修改,则从本地终端中将所述文件标识对应的文件删除。
在本申请实施例中,如果本地终端的文件被删除后,不能及时同步至服务端,或者该文件标识对应的文件在用户登录的其他终端删除后,需要将该文件标识对应的文件从本地终端中删除,以确保同一账号的用户在多个终端登录时服务端的文件能够保证正确的同步,避免出现在某一终端进行同步操作出现错误覆盖其他终端上传的文件的问题。
请参考图3,图3示出了本申请实施例提供的另一种确定文件同步操作并执行的方法的具体实现步骤,详述如下:
在步骤S301中,如果所述文件标识对应的文件存在于服务端,且存在于本地终端,则获取本地终端的文件的删除标识。
在本申请实施例中,如果某一文件标识对应的文件同时存在服务端和本地终端,要保证文件同步操作的正确率,避免出现在某一终端进行同步操作出现错误覆盖其他终端上传的文件的问题,需要确定本地终端中的该文件标识对应的文件是否被删除,再根据文件的修改时间确定本地终端中被修改的文件是基于一个较旧的版本修改的,还是基于当前最新的版本修改的,确定是直接删除本地终端和服务端的文件,还是将本地终端中的文件上传至服务端,还是将服务器中的文件下载至本地终端,抑或是将从服务端下载的文件和本地终端中的文件进行内容后再上传至服务端。
在步骤S302中,如果所述删除标识为已删除,且所述第一文件修改时间晚于所述第二文件修改时间,则从本地终端和服务端中将所述文件标识对应的文件删除。
在本申请实施例中,当某一文件标识对应的文件同时存在服务端和本地终端时,如果在本地终端中该文件被标识为已删除,且本地终端的文件修改时间晚于服务端的文件修改时间,说明用户对该文件进行了删除操作,因此需要将该文件从本地终端以及服务端中删除,以保证本地终端和服务端的文件同步的正确率。
在步骤S303中,如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间相同,则获取在所述第一文件修改时间或所述第二文件修改时间之后的本地终端的文件的修改信息。
在步骤S304中,如果本地终端的文件被修改,则将修改后的本地终端的文件上传至服务端。
在本申请实施例中,某一文件标识对应的文件同时存在服务端和本地终端时,如果在本地终端中该文件被标识为未删除,并且本地终端中的文件修改时间和服务端中的文件修改时间相同,说明本地终端的文件版本为服务端的版本一致,如果用户在该文件修改时间之后对该文件进行了修改,则需要从本地终端中将修改后的该文件标识对应的文件上传至服务器以保证同步操作的正确率,并同时更新服务端的文件信息列表中该文件对应的文件修改时间。如果用户没有进行修改,则不需要进行任何操作。
作为示例而非限定,在步骤S302之后,还包括步骤S305、S306和S307,步骤S305、S306和S307具体如下:
在步骤S305中,如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间不相同,则获取本地终端的文件的修改信息。
在本申请实施例中,在本申请实施例中,某一文件标识对应的文件同时存在服务端和本地终端时,如果在本地终端中该文件被标识为未删除,并且本地终端中的文件修改时间和服务端中的文件修改时间不相同,则说明本地终端保存的文件不是最新版本的文件,需要根据文件的修改信息确定是直接从服务端下载该文件标识对应的文件,还是将本地终端中修改的文件内容与服务端的文件内容进行合并。
在步骤S306中,如果本地终端的文件被修改,则从服务端中下载所述文件标识对应的文件,并将下载的文件与本地终端修改后的文件进行内容合并。
在本申请实施例中,如果本地终端的文件被修改,说明在本地终端进行的修改是基于一个较旧版本的文件所进行的修改,并且该用户在其他终端登录并对该文件标识对应的文件进行过修改且成功上传至服务端,此时,需要将本地终端的文件与服务端的文件进行内容合并。
在进行内容合并前,需要从服务端将最新版本的文件下载下来,再与本地终端中修改后的文件进行内容合并,以避免出现在某一终端进行同步操作出现错误覆盖其他终端上传的文件的问题。
在步骤S307中,将进行内容合并后得到本地终端的文件上传至服务端。
在步骤S305之后,还包括:
如果本地终端的文件未被修改,则从服务端中下载所述文件标识对应的文件。
在本申请实施例中,如果本地中观的文件未被修改,说明本地终端中保存的文件不是最新版本的文件,需要接从服务端下载该文件标识对应的文件以保证文件同步的正确率。
在本申请的一些实施例中,如果所述文件标识对应的文件存在于服务端,且不存在于本地终端,则从服务端中下载所述文件标识对应的文件。
在本申请的一些实施例中,在从服务端中下载所述文件标识对应的文件时,或者在将本地终端的文件上传至服务端时,还包括:
更新所述第一文件信息列表和/或所述第二文件信息列表的文件修改时间。
在本申请实施例中,分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,提高了同一账号在多个平台登录时文件同步的准确率,避免因同步操作错误覆盖文件而出现的数据丢失的问题。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑控制,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的文件同步方法,图4示出了本申请实施例提供的文件同步装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图4,该装置包括:
文件信息列表获取单元41,用于分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
信息并集处理单元42,用于将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
文件情况确定单元43,用于根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
文件同步操作单元44,用于根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
作为示例而非限定,所述文件情况确定单元43具体用于:
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含第一文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于本地终端,且不存在于服务端,所述第一文件修改时间为本地终端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间包含所述第一文件修改时间和第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且存在于本地终端,所述第二文件修改时间为服务端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含所述第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且不存在于本地终端。
作为示例而非限定,所述文件同步操作单元44具体用户:
如果所述文件标识对应的文件存在于本地终端,且不存在于服务端,则获取所述文件标识对应的文件的修改信息;
如果所述文件标识对应的文件被修改,则获取所述文件标识对应的文件的删除标识;
如果所述删除标识为未删除,则从本地终端中将所述文件标识对应的文件上传至服务端;
如果所述删除标识为已删除,或者所述文件标识对应的文件未被修改,则从本地终端中将所述文件标识对应的文件删除。
作为示例而非限定,所述文件同步操作单元44具体还用于:
如果所述文件标识对应的文件存在于服务端,且存在于本地终端,则获取本地终端的文件的删除标识;
如果所述删除标识为已删除,且所述第一文件修改时间晚于所述第二文件修改时间,则从本地终端和服务端中将所述文件标识对应的文件删除。
作为示例而非限定,所述文件同步操作单元44具体还用于:
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间相同,则获取在所述第一文件修改时间或所述第二文件修改时间之后的本地终端的文件的修改信息;
如果本地终端的文件被修改,则将修改后的本地终端的文件上传至服务端。
作为示例而非限定,所述文件同步操作单元44具体还用于:
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间不相同,则获取本地终端的文件的修改信息;
如果本地终端的文件被修改,则从服务端中下载所述文件标识对应的文件,并将下载的文件与本地终端修改后的文件进行内容合并;
将进行内容合并后得到本地终端的文件上传至服务端;
如果本地终端的文件未被修改,则从服务端中下载所述文件标识对应的文件。
作为示例而非限定,所述文件同步操作单元44具体还用于:
如果所述文件标识对应的文件存在于服务端,且不存在于本地终端,则从服务端中下载所述文件标识对应的文件。
作为示例而非限定,所述文件同步操作单元44具体还用于:
在从服务端中下载所述文件标识对应的文件时,或者在将本地终端的文件上传至服务端时,更新所述第一文件信息列表和/或所述第二文件信息列表的文件修改时间。
在本申请实施例中,分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,提高了同一账号在多个平台登录时文件同步的准确率,避免因同步操作错误覆盖文件而出现的数据丢失的问题。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种本地终端,该本地终端包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
图5是本申请一实施例提供的一种本地终端的示意图。如图5所示,该实施例的本地终端5包括:处理器55、存储器51以及存储在所述存储器51中并可在所述处理器55上运行的计算机程序52。所述处理器55执行所述计算机程序52时实现上述任意各个方法实施例中的步骤,例如图1所示的步骤101至104。或者,所述处理器55执行所述计算机程序52时实现上述各装置实施例中各单元的功能,例如图5所示模块51至54的功能。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/本地终端的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/本地终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/本地终端实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (12)

1.一种文件同步方法,其特征在于,包括:
分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
2.如权利要求1所述的文件同步方法,其特征在于,所述根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况,包括:
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含第一文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于本地终端,且不存在于服务端,所述第一文件修改时间为本地终端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间包含所述第一文件修改时间和第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且存在于本地终端,所述第二文件修改时间为服务端中所述文件标识对应的文件修改时间;
如果在所述第三文件信息列表中,与所述文件标识对应的文件修改时间仅包含所述第二文件修改时间,则确定所述文件标识对应的文件情况为所述文件标识对应的文件存在于服务端,且不存在于本地终端。
3.如权利要求2所述的文件同步方法,其特征在于,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于本地终端,且不存在于服务端,则获取所述文件标识对应的文件的修改信息;
如果所述文件标识对应的文件被修改,则获取所述文件标识对应的文件的删除标识;
如果所述删除标识为未删除,则从本地终端中将所述文件标识对应的文件上传至服务端;
如果所述删除标识为已删除,或者所述文件标识对应的文件未被修改,则从本地终端中将所述文件标识对应的文件删除。
4.如权利要求2或3所述的文件同步方法,其特征在于,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于服务端,且存在于本地终端,则获取本地终端的文件的删除标识;
如果所述删除标识为已删除,且所述第一文件修改时间晚于所述第二文件修改时间,则从本地终端和服务端中将所述文件标识对应的文件删除。
5.如权利要求4所述的文件同步方法,其特征在于,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,还包括:
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间相同,则获取在所述第一文件修改时间或所述第二文件修改时间之后的本地终端的文件的修改信息;
如果本地终端的文件被修改,则将修改后的本地终端的文件上传至服务端。
6.如权利要求4所述的文件同步方法,其特征在于,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,还包括:
如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间不相同,则获取本地终端的文件的修改信息;
如果本地终端的文件被修改,则从服务端中下载所述文件标识对应的文件,并将下载的文件与本地终端修改后的文件进行内容合并;
将进行内容合并后得到本地终端的文件上传至服务端。
7.如权利要求6所述的文件同步方法,其特征在于,在所述如果所述删除标识为未删除,且所述第一文件修改时间与所述第二文件修改时间不相同,则获取本地终端的文件的修改信息之后,还包括:
如果本地终端的文件未被修改,则从服务端中下载所述文件标识对应的文件。
8.如权利要求2所述的文件同步方法,其特征在于,所述根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行,包括:
如果所述文件标识对应的文件存在于服务端,且不存在于本地终端,则从服务端中下载所述文件标识对应的文件。
9.如权利要求5至8任一项所述的文件同步方法,其特征在于,在从服务端中下载所述文件标识对应的文件时,或者在将本地终端的文件上传至服务端时,还包括:
更新所述第一文件信息列表和/或所述第二文件信息列表的文件修改时间。
10.一种文件同步装置,其特征在于,包括:
文件信息列表获取单元,用于分别从服务端和本地终端中获取文件信息列表,所述文件信息列表包含有文件标识和文件修改时间;
信息并集处理单元,用于将第一文件信息列表和第二文件信息列表按照文件标识进行并集处理,生成包含具有唯一性的文件标识的第三文件信息列表,所述第一文件信息列表为从服务端获取的文件信息列表,所述第二文件信息列表为从本地终端中获取的文件信息列表;
文件情况确定单元,用于根据所述第三文件信息列表所包含的文件标识,以及与所述文件标识对应的文件修改时间,确定所述文件标识对应的文件情况;
文件同步操作单元根据所述文件情况,确定本地终端和/或服务端对应的文件同步操作并执行。
11.一种本地终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任一项所述的文件同步方法。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任一项所述的文件同步方法。
CN201911347498.8A 2019-12-24 2019-12-24 一种文件同步方法、装置及本地终端 Active CN111190962B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911347498.8A CN111190962B (zh) 2019-12-24 2019-12-24 一种文件同步方法、装置及本地终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911347498.8A CN111190962B (zh) 2019-12-24 2019-12-24 一种文件同步方法、装置及本地终端

Publications (2)

Publication Number Publication Date
CN111190962A true CN111190962A (zh) 2020-05-22
CN111190962B CN111190962B (zh) 2024-02-09

Family

ID=70709366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911347498.8A Active CN111190962B (zh) 2019-12-24 2019-12-24 一种文件同步方法、装置及本地终端

Country Status (1)

Country Link
CN (1) CN111190962B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113591027A (zh) * 2021-07-05 2021-11-02 宁波三星医疗电气股份有限公司 一种实现集中器与本地通信模块之间档案同步的方法
CN113992652A (zh) * 2021-10-15 2022-01-28 珠海金山办公软件有限公司 跨终端文件同步方法及装置
CN114422500A (zh) * 2021-12-29 2022-04-29 成都鲁易科技有限公司 云备份中文件标识冲突的处理方法、装置及电子设备
CN117112508A (zh) * 2023-10-20 2023-11-24 杭州美创科技股份有限公司 基于序号的文件同步方法、装置、计算机设备及存储介质
CN117149728A (zh) * 2023-10-30 2023-12-01 西安热工研究院有限公司 可信分散控制系统上位机多节点数据在线同步方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1959672A (zh) * 2005-07-01 2007-05-09 Qnx软件操作系统德国有限公司 文件系统完整性的优化启动验证
CN101313495A (zh) * 2006-01-26 2008-11-26 华为技术有限公司 数据同步方法、系统及装置
CN103220358A (zh) * 2013-04-19 2013-07-24 李晶 一种多终端在线文件同步方法、系统、服务器及终端设备
CN110035121A (zh) * 2019-03-29 2019-07-19 联想(北京)有限公司 一种信息处理方法及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1959672A (zh) * 2005-07-01 2007-05-09 Qnx软件操作系统德国有限公司 文件系统完整性的优化启动验证
CN101313495A (zh) * 2006-01-26 2008-11-26 华为技术有限公司 数据同步方法、系统及装置
CN103220358A (zh) * 2013-04-19 2013-07-24 李晶 一种多终端在线文件同步方法、系统、服务器及终端设备
CN110035121A (zh) * 2019-03-29 2019-07-19 联想(北京)有限公司 一种信息处理方法及电子设备

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113591027A (zh) * 2021-07-05 2021-11-02 宁波三星医疗电气股份有限公司 一种实现集中器与本地通信模块之间档案同步的方法
CN113992652A (zh) * 2021-10-15 2022-01-28 珠海金山办公软件有限公司 跨终端文件同步方法及装置
CN113992652B (zh) * 2021-10-15 2024-03-15 珠海金山办公软件有限公司 跨终端文件同步方法及装置
CN114422500A (zh) * 2021-12-29 2022-04-29 成都鲁易科技有限公司 云备份中文件标识冲突的处理方法、装置及电子设备
CN114422500B (zh) * 2021-12-29 2023-05-09 成都鲁易科技有限公司 云备份中文件标识冲突的处理方法、装置及电子设备
CN117112508A (zh) * 2023-10-20 2023-11-24 杭州美创科技股份有限公司 基于序号的文件同步方法、装置、计算机设备及存储介质
CN117112508B (zh) * 2023-10-20 2024-02-06 杭州美创科技股份有限公司 基于序号的文件同步方法、装置、计算机设备及存储介质
CN117149728A (zh) * 2023-10-30 2023-12-01 西安热工研究院有限公司 可信分散控制系统上位机多节点数据在线同步方法及系统
CN117149728B (zh) * 2023-10-30 2024-01-23 西安热工研究院有限公司 可信分散控制系统上位机多节点数据在线同步方法及系统

Also Published As

Publication number Publication date
CN111190962B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
CN111190962A (zh) 一种文件同步方法、装置及本地终端
CN106874389B (zh) 数据的迁移方法和装置
CN109413127B (zh) 一种数据同步方法和装置
CN110113247B (zh) 富媒体信息收发系统、发送、展示方法及终端设备
CN110737726B (zh) 一种确定待测试接口的测试数据的方法和装置
CN110543469B (zh) 一种数据库版本管理方法及服务器
CN110737719A (zh) 数据同步方法、装置、设备及计算机可读存储介质
CN115185967A (zh) 数据处理方法、装置、电子设备和存储介质
CN115421968A (zh) 数据恢复方法及电子设备
CN110737458A (zh) 一种代码更新方法和相关装置
CN112559913B (zh) 一种数据处理方法、装置、计算设备及可读存储介质
CN109842482B (zh) 一种信息同步方法、系统及终端设备
CN116737662A (zh) 业务数据处理的方法、装置、电子设备和存储介质
CN113312669B (zh) 密码同步方法、设备及存储介质
CN110866031A (zh) 数据库访问路径的优化方法、装置、计算设备以及介质
CN111984723A (zh) 数据同步方法、装置及终端设备
CN114090911A (zh) 界面处理方法、装置、计算机设备及计算机可读存储介质
CN110413603B (zh) 重复数据的确定方法、装置、电子设备及计算机存储介质
CN111124467B (zh) 权限角色的展示方法、系统、计算机设备及可读存储介质
CN113076343A (zh) 数据查询方法、装置、设备及存储介质
CN112988583A (zh) 数据库语法兼容性测试的方法和装置
CN114547184A (zh) 人员信息同步方法、终端设备及存储介质
CN113760876A (zh) 一种数据过滤方法和装置
CN112752165A (zh) 字幕处理方法、装置、服务器及计算机可读存储介质
CN111143426A (zh) 多系统用户信息关联方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant