一种网络传输文件的处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及软件开发技术领域,更具体的涉及一种网络传输文件的处理方法及装置。
【背景技术】
[0002]文件传输(英文为:filetransfer)是将一个文件或其中的一部分从一个计算机系统传到另一个计算机系统。文件传输可能把文件传输至另一计算机中去存储,或访问远程计算机上的文件,或把文件传输至另一计算机上去运行(作为一个程序)或处理(作为数据),或把文件传输至打印机去打印。
[0003]现有技术中,一般通过FTP(File Transfer Protocol,中文简称:文件传输协议)、HTTP(Hyper Text Transfer Protocol,中文简称:超文本传输协议)、等协议来传输文件,当文件传输到服务器上后,服务器上的程序可以读取文件,完成传输业务处理,这种传输方式是异步传输。在上述传输方式中,由于服务器上的程序无法判断异步传输的文件是否完成传输,而直接读取文件可能会读取正在写入的文件,导致读取文件内容出现错误。
【发明内容】
[0004]本发明实施例提供一种网络传输文件的处理方法及装置,用以解决现有技术中存在文件传输中存在读取文件内容出现错误的问题。
[0005]本发明实施例提供一种网络传输文件的处理方法,包括:
[0006]将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间;
[0007]确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;
[0008]若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。
[0009]优选地,还包括:
[0010]若所述第二队列为空队列,确认所述第一队列中所述待获取的网络传输文件的最后修改时间,将与当前时间差最小的所述待获取的网络传输文件传输到所述第二队列中。
[0011]优选地,还包括:
[0012]若所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间不相同,确认所述待确认文件获取成功。
[0013]本发明实施例还提供一种网络传输文件的处理装置,包括:
[0014]存储单元,用于将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间;
[0015]第一确认单元,用于确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;
[0016]第二确认单元,用于若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。
[0017]优选地,所述第一确认单元还用于:
[0018]若所述第二队列为空队列,确认所述第一队列中所述待获取的网络传输文件的最后修改时间,将与当前时间差最小的所述待获取的网络传输文件传输到所述第二队列中。
[0019]优选地,所述第二确认单元还用于:
[0020]若所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间不相同,确认所述待确认文件获取成功。
[0021]本发明实施例中,将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间;确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。上述实施例中,由于在现有传输的基础上,增加了待确认文件的第二队列,将无法判断是否完成传输的待获取的网络传输文件,暂时存放到待确认文件的第二队列中,后续通过比较待确认文件的第二队列中的文件的最后修改时间,来进一步的判断待获取的网络传输文件是否完成传输,采用上述方法,可以避免现有技术中存在读取文件内容出现错误的问题。
【附图说明】
[0022]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0023]图1为本发明实施例提供的一种网络传输文件的处理方法流程示意图;
[0024]图2为本发明实施例提供的一种网络传输文件的处理装置结构示意图。
【具体实施方式】
[0025]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026]图1示例性的示出了本发明实施例提供的一种网络传输文件的处理方法流程示意图,该方法至少可以应用于软件开发。
[0027]如图1所示,本发明实施例提供的一种网络传输文件的处理方法,包括以下步骤:
[0028]步骤101,将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间;
[0029]步骤102,确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;
[0030]步骤103,若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。
[0031 ]在步骤101中,对待获取的网络传输文件的读取处理流程,包括,待获取目录中的全部网络传输文件的文件名称和最后的修改时间,将上述待获取目录中的全部文件存储到第一队列中,其中,第一队列中包括待获取的网络传输文件的文件名称和该待获取的网络传输文件的最后修改时间。
[0032]需要说明的是,上述待获取的网络传输文件的最后修改时间是每个待获取目录中的网络传输文件存储到第一队列时对应的时间。
[0033]在本发明实施例中,为了避免现有技术中的异步传输存在直接读取文件可能会导致读取文件内容错误的问题。服务器采用轮询的方式,读取待获取的网络传输文件的最后修改时间来判断待获取的网络传输文件是否已经完成接收。
[0034]具体地,在步骤102中,创建第二队列,其中,第二队列包括待确认文件的文件名称和该待确认文件的最后修改时间。
[0035]在服务器轮询过程中,需要确认第二队列是否为空队列,若第二队列为非空队列,即第二队列中包括有待确认文件。进一步地,需要根据第二队列中包括的待确认文件的最后修改时间,来判断该待确认文件是否已经完成传输。
[0036]具体地,当第二队列为非空队列时,遍历第二队列,确认第二队列包括的所有的待确认文件的最后修改时间,根据该第二队列的所有待确认文件的最后修改时间,判断第二队列的所有待确认文件的最后修改时间是否与第一队列中待获取的网络传输文件的最后修改时间相同,若在第二队列中待确认文件的最后修改时间和第一队列中的待获取的网络传输文件的最后修改时间相同,则可以确认该待确认文件没有获取成功,可以将该未获取成功的网络传输文件重新放入到第一队列中,等待下一次获取;若在第二队列中待确认文件的最后修改时间和第一队列中的待传输文件的最后修改时间不相同,则可以确认第二队列中的该待确认文件已经获取成功,可以将获取成功的网络文件从第二队列中删除。
[0037]进一步地,若第二队列为空队列,可以将第一队列中的所有的待获取的网络传输文件按
照最后修改时间进行排序,将与当前时间差最小的某个待获取的网络传输文件或多个待获取的网络传输文件传输到第二队列中。
[0038]在本发明实施例中,若第二队列中存储的待确认文件是第一队列中的与当前时间差最小的某个待获取的网络传输文件,则可以从第一队列中读取其他待获取的网络传输文件,需要说明的是,这里的“其他待获取的网络传输文件”为除了存储到第二队列中的某个待获取的网络传输文件之外的其他文件。
[0039]进一步地,当第一队列中的其他待获取的网络传输文件都已经确认获取成功之后,若第二队列中的存储的第一队列中的与当前时间差最小的某个待获取的网络传输文件的最后修改时间,和第一队列中的存储的待获取的网络传输文件的最后修改时间依然一致,则继续将第二队列中存储的第一队列中的与当前时间差最小的某个待获取的网络传输文件存储到第一队列中,等待下一次确认该待获取网络传输文件是否获取成功。
[0040]在本发明实施例中,可以按照上述处理流程,通过轮询的方法依次成功获取第一队列中的所有的待获取的网络传输文件。
[0041]基于同一发明构思,本发明实施例提供了一种网络传输文件的处理装置,由于该装置解决技术问题的原理与一种网络传输文件的获取的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
[0042]如图2所示,为本发明实施例提供的一种网络传输文件的处理装置结构示意图,包括:存储单元201,第一确认单元202和第二确认单元203。
[0043]存储单元201,用于将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间;
[0044]第一确认单元202,用于确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;
[0045]第二确认单元203,用于若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。
[0046]优选地,所述第一确认单元202还用于:
[0047]若所述第二队列为空队列,确认所述第一队列中所述待获取的网络传输文件的最后修改时间,将与当前时间差最小的所述待获取的网络传输文件传输到所述第二队列中。
[0048]优选地,所述第二确认单元203还用于:
[0049]若所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间不相同,确认所述待确认文件获取成功。
[0050]应当理解,以上一种网络传输文件的处理装置包括的单元仅为根据该设备装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例提供的一种网络传输文件的处理装置所实现的功能与上述实施例提供的一种网络传输文件的处理方法一一对应,对于该装置所实现的更为详细的处理流程,在上述方法实施例一中已做详细描述,此处不再详细描述。
[0051]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0052]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0053]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0054]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0055]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0056]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种网络传输文件的处理方法,其特征在于,包括: 将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间; 确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间; 若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。2.如权利要求1所述的方法,其特征在于,还包括: 若所述第二队列为空队列,确认所述第一队列中所述待获取的网络传输文件的最后修改时间,将与当前时间差最小的所述待获取的网络传输文件传输到所述第二队列中。3.如权利要求1所述的方法,其特征在于,还包括: 若所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间不相同,确认所述待确认文件获取成功。4.一种网络传输文件的处理装置,其特征在于,包括: 存储单元,用于将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和所述待获取的网络传输文件的最后修改时间; 第一确认单元,用于确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间; 第二确认单元,用于若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。5.如权利要求4所述的装置,其特征在于,所述第一确认单元还用于: 若所述第二队列为空队列,确认所述第一队列中所述待获取的网络传输文件的最后修改时间,将与当前时间差最小的所述待获取的网络传输文件传输到所述第二队列中。6.如权利要求4所述的装置,其特征在于,所述第二确认单元还用于: 若所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间不相同,确认所述待确认文件获取成功。
【专利摘要】本发明公开了一种网络传输文件的处理方法及装置,涉及软件开发技术领域,用以解决现有技术中存在文件传输中存在读取文件内容出现错误的问题。包括:将待获取的网络传输文件存储到第一队列中,所述第一队列中包括待获取的网络传输文件的文件名称和最后修改时间;确认第二队列是否为空队列,其中,所述第二队列包括待确认文件的文件名称和所述待确认文件的最后修改时间;若所述第二队列为非空队列,遍历所述第二队列,确认所述第二队列中包括的所述待确认文件的最后修改时间与所述第一队列中所述待获取的网络传输文件的最后修改时间是否相同,若相同,确认所述待确认文件未获取成功。
【IPC分类】H04L29/08
【公开号】CN105491160
【申请号】CN201610029757
【发明人】柏昆
【申请人】百势软件(北京)有限公司
【公开日】2016年4月13日
【申请日】2016年1月1日